1, Arrays.copyOf, System.arraycopy这两个方法用得非常多。
2, 比较两个 Object是否相等
if (o1==null ? o2 == null : o1.equals(o2))
3, equals方法一般写法
Public Boolean equals(Object o) {
If (o == this) return true;
If ( ! (o instanceof List) return false;
//比较具体数据大小
}
4,Iterator 一定要会用
5,延迟初始化一定要用
6,写clone 方法一般写法
Public Object clone()
{
//step 1: super.clone()得到一个基本对象
//step 2: 对基本对象的各个值域进行设置
}
7,布尔变量对多个数据进行测试
boolean modified = false; modified |= remove(i.next());
8,transient和 volatile的用法
9,在ArrayDeque里面,为了找到最合适的大小(2的幂数),有下面的代码
if (numElements >= initialCapacity) {
initialCapacity = numElements;
initialCapacity |= (initialCapacity >>> 1);
initialCapacity |= (initialCapacity >>> 2);
initialCapacity |= (initialCapacity >>> 4);
initialCapacity |= (initialCapacity >>> 8);
initialCapacity |= (initialCapacity >>> 16);
initialCapacity++;
if (initialCapacity < 0) // Too many elements, must back off
initialCapacity >>>= 1;// Good luck allocating 2 ^ 30 elements
}
最新评论