摘要:
基本的拷贝是浅拷贝,只会拷贝基础类型的值,其他是属性引用拷贝,公用一个属性实例。 重写clone进行深拷贝,不再拷贝引用直接拷贝数值。 如何利用序列化来完成对象的拷贝呢?在内存中通过字节流的拷贝是比较容易实现的。把母对象写入到一个字节流中,再从字节流中将其读出来,这样就可以创建一个新的对象了,并且该 阅读全文
摘要:
Java中集合大家族的成员实在是太丰富了,有常用的ArrayList、HashMap、HashSet,也有不常用的Stack、Queue,有线程安全的Vector、HashTable,也有线程不安全的LinkedList、TreeMap等等! 上面的图展示了整个集合大家族的成员以及他们之间的关系。下 阅读全文
摘要:
subList subList返回仅仅只是一个视图。直接上源码 subListRangeCheck方式是判断fromIndex、toIndex是否合法,如果合法就直接返回一个subList对象,注意在产生该new该对象的时候传递了一个参数 this ,该参数非常重要,因为他代表着原始list。 该S 阅读全文
摘要:
compareTo和equal 在Java中我们常使用Comparable接口来实现排序,其中compareTo是实现该接口方法。我们知道compareTo返回0表示两个对象相等,返回正数表示大于,返回负数表示小于。同时我们也知道equals也可以判断两个对象是否相等。 按照常规思路来说应该两者in 阅读全文
摘要:
定义 HashMap实现了Map接口,继承AbstractMap。其中Map接口定义了键映射到值的规则,而AbstractMap类提供 Map 接口的骨干实现,以最大限度地减少实现此接口所需的工作,其实AbstractMap类已经实现了Map。 数据结构 我们知道在Java中最常用的两种结构是数组和 阅读全文