hash散列,添加对象的时候,首先判断两个对象的hashcode是否相同,如果不同,直接添加,如果相同,再判断equals方法,如果不同直接添加equls主要的作用是比较对象的内容。如果不同也能添加,与是否是同一个对象无关。equals是判断对象内容是否相等hashcodehashsethashmap当中不..
分类:
编程语言 时间:
2016-05-26 11:40:37
阅读次数:
143
学习内容:Set----保证集合中对象的唯一性,存取无序,可以存储nullHashSet:线程不安全,保证唯一性通过hashCode(),equals()TreeSet:可以对集合中元素排序,默认升序,可以通过迭代器调用descendingIeterator()降序,底层使用二叉树结构存储,排序方法:A,自定义Comparator,并构..
分类:
其他好文 时间:
2016-05-24 17:19:40
阅读次数:
178
1.定义罪犯Criminal类,height(身高)/weight(体重)/blood(血型)/home(籍贯)属性。重写hashcode和equals,使用四个属性的组合进行实现。创建HashSet集合,里面存放20个Criminal对象,其中O型血2人,A型血3人,B型血4人,AB型血1人,其余血型不详。注意:hashcode()方法实现时,要..
分类:
编程语言 时间:
2016-05-24 17:09:56
阅读次数:
200
综合前面的介绍和实例代码,我们可以知道,如果涉及到堆栈、队列等操作,应该考虑用 List。对于需要快速插入、删除元素等操作,应该使用 LinkedList。如果需要快速随机访问元素,应该使用 ArrayList。如果程序在单线程环境中,或者访问仅仅在一个线程中进行,考虑非同步的类,其效率较高。如果多个线程可能同时操作一个类,应该使用同步的类。要特别注意对哈希表的操作,作为 Key 的对象要正确复写 Equals 和 HashCode 方法。尽量返回接口而非实际的类型,如返回 List 而非 ArrayLis...
分类:
编程语言 时间:
2016-05-23 15:14:20
阅读次数:
164
1.当向ArrayList添加一个对象时,实际上就是将该对象放置到了ArrayList底层所维护的数组当中;当向LinkedList中添加一个对象时,实际上LinkedList内部会生成一个Entry对象,该Entry对象的结构为:Entry{Entryprevious;Objectelement;Entrynext;}其中的Object类型的元素element..
分类:
编程语言 时间:
2016-05-22 00:50:24
阅读次数:
155
转: 讲的很详细的一篇关于object equals() & hashCode() 的文章 哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率。在Java的Object类中有一个方法: 1 public native int hashCode(); 根据这个方法 ...
分类:
其他好文 时间:
2016-05-21 20:23:34
阅读次数:
333
1.定义罪犯Criminal类,height(身高)/weight(体重)/blood(血型)/home(籍贯)属性。重写hashcode和equals,使用四个属性的组合进行实现。创建HashSet集合,里面存放20个Criminal对象,其中O型血2人,A型血3人,B型血4人,AB型血1人,其余血型不详。注意:hashcode()方法实现时,要..
分类:
其他好文 时间:
2016-05-20 19:56:44
阅读次数:
184
1、List,Set,map都是继承自Collection接口, java.util2、List特点:元素有放入顺序,元素可重复 ,Set特点:元素无放入顺序,元素不可重复(注意:元素虽然无放入顺序,但是元素在set中的位置是有该元素的HashCode决定的,其位置其实是固定的) 3、List接口有 ...
分类:
编程语言 时间:
2016-05-19 10:28:54
阅读次数:
138
覆写如下: public class User{ private Integer id; private String userName; private String passWord; public Integer getId() { return id; } public void setId ...
分类:
其他好文 时间:
2016-05-19 09:03:47
阅读次数:
190
java中判断两个对象是否相等的规则:首先,判断两个对象的hashCode是否相等 如果不相等,认为两个对象也不相等 如果相等,则判断两个对象用equals运算是否相等 如果不相等,认为两个对象也不相等 如果相等,认为两个对象相等 我们在equals方法中需要向下转型,效率很低,所以先判断hashC ...
分类:
其他好文 时间:
2016-05-18 23:44:49
阅读次数:
253