每日工作笔记,每日学习笔记(16)

在看jdk里的collection framework这部分,小结一下: 
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
        }
Tags:  教师业务学习笔记 学习笔记 每日工作笔记

延伸阅读

最新评论

发表评论