一. Set集合
其主要实现类为HashSet、TreeSet。 存储对象引用,不允许重复的对象。
子类对象HashSet
调用对象的hashCode ()方法以获取kldmy,并计算集合中存储对象的位置。 kldmy和equals ) )的方法进行比较,判断有无重复。 因此,在重载equals (方法的同时,还必须重载hashCode )方法。
种子集
可以继承ShortedSet接口并对集合中的对象进行排序。 默认的排序方法是自然排序,但只能对实现Comparable界面的对象进行排序。 java既在数字类型对象(如Integer、Byte、Double、Character和String )中实现,也在字符类型对象中实现。
如果有特殊排序,则必须通过该接口下的compareTo ) )方法或Comparator接口重新加载实现类生成集合。
特点:Set接口(无序、不允许重复对象) ) ) ) ) ) ) ) )。
二. List集合
其主要实现类为LinkedList、ArrayList,前者实现链表结构,后者可以表示大小可变的数组。
List的特点是可以线性存储对象并允许存储重复对象。 List可以使用Collections类的静态方法sort排序。 sort (列表)自然排序; 列表,比较器代码ddmparator (sort )客户化排序。
特征:List线性集合接口(规则且可重复) ) ) ) ) ) )。
ArrayList :动态数组[可变长度动态数组]
链接列表:链表结构的集合
区分:链接列表常用于添加/删除操作较多、查询操作较少的情况,而ArrayList则相反。
三.地图收藏
其主要实现类为HashMap、TreeMap。 Map不要求值唯一性,要求健康唯一性,加上现有的健康,就覆盖了原始值的对象。 HashMap类可以根据散列算法访问密钥对象,并重载equals ()、hashCode )方法来比较密钥,但两者必须匹配。 TreeMap可以自然排序,也可以通过传递Comparator实现类来构建TreeMap。
:Map键值对存储结构的集合(无序)。 键对、键唯一、值不唯一)
HashMap是最常用的Map
可以基于特征点:的密钥的HashCode值存储数据,并基于密钥直接获取其值,访问速度快,并且在遍历时获取数据的顺序完全随机。 由于关键对象不能重复,因此HashMap最多只允许一个记录的关键点为Null,多个记录的值为Null,并且是异步的
Hashtable类似于HashMap。 HashMap的线程安全版,支持线程同步。 这意味着一次只能写入Hashtable的一个线程,因此Hashtale需要很长时间才能写入,并且从Dictionary类继承。 不同之处在于,无法记录的键或值为空。 另外,很有效率