LruCache
的基本思想是Least Recently Used(最近最少使用):
https://www.jianshu.com/p/7d0522e97fc2
基本数据类型 & 引用类型
- 八种 基本数据类型:
byte
、short
、int
、long
、float
、double
、char
、boolean
。 - 引用类型:除去基本数据类型的其它类型都是引用数据类型,例如类、接口、数组。
在 (1) JAVA 基本数据类型与引用数据类型 一文中总结了这两者的区别:
基本数据类型引用数据类型变量名指向具体的数值变量名指向存数据对象的内存地址,即变量名指向hash
值变量在声明之后就会立刻分配给他内存空间它以特殊的方式指向对象实体,这类变量声明时不会分配内存,只是存储了一个内存地址基本类型之间的赋值是创建新的拷贝对象之间的赋值只是传递引用“==”和“!=”是在比较值“==”
和“!=”
是在比较两个引用是否相同使用时需要赋具体值,判断时使用==
号使用时可以赋值nul
==和equals区别:https://www.jianshu.com/p/5899d715963e
equals()和==的区别:
一、对象类型不同
1、equals():是超类Object中的方法。
2、==:是操作符。
二、比较的对象不同
1、equals():用来检测两个对象是否相等,即两个对象的内容是否相等。
2、==:用于比较引用和比较基本数据类型时具有不同的功能。
总结:== 对于基本类型来说是值比较,对于引用类型来说是比较的是引用;而 equals 默认情况下是引用比较,只是很多类重新了 equals 方法,比如 String、Integer 等把它变成了值比较,所以一般情况下 equals 比较的是值是否相等。
onCreate 和onResume(恢复,摘要) 区别:https://www.jianshu.com/p/ab8aad800b20activity生命周期,栈,状态保存:https://www.jianshu.com/p/fd82d18994ce
oncreate 就代表了初始化。 所以所有的控件都要在 oncreate 里面初始化。onresume 里面去执行初始化后被展示的时候要进行的行为操作。
onCreate(xxx)
初始化,onResume()
注册、拉取展示数据,onPause()
反注册,onDestroy()
释放资源。
activity栈模式 设置:intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);或者在mannifist文件设置;
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);