Java-集合的总结

Java-集合的总结 标签:this tostring tab prime treeset 比较

Java-集合的总结

标签:thistostringtabprimetreeset比较nbsp不同的table

Collection:接口

只有通过Collection接口中toString()进行重写,才能够System.out.print(coll)显示Collection集合中元素

|—–Set:元素无序,不可重复的集合

|—hashSet(主要实现类) +LinkedHashSet(添加顺序遍历集合中元素)+TreeSet

Set 使用的方法基本上Collection接口下定义;

无序:元素底层存储的位置无序的,不重复性:添加相同元素无法添加进去

HashSet(自定义类的重复性重写 hashCode和equals方法):原理:向Set集合中添加元素,首先hashCode方法计算hash值,决定此对象存取的位置

在此位置有对象,在比较equals方法—-注意:重写HashCode方法:对象属性值一样保证HashCode一样,对象属性值不一样保证HashCode不一样,不要相同hashcode值但是有不同的属性值。

Treeset:(对加入元素进行排序处理)存储对象按照ComparaTo方法进行排序

1.TreeSet添加元素属于同一个类型,HashSet属于不同类型

2.两种排序: 1.自然排序 自定义类实现的是 Comparable 接口 重写ComparaTo(按照某种属性排序,属性相同按照其他属性相同) +hashCode+equals方法

2.定制排序:1.创建一个Comparator接口的对象(采用匿名内部类方法) 2.在此对象中重写Compare的方法在此compare方法指明按照某个属性进行排序,3.将对象作为形参 传入TreeSet构造器中。

要求重写 comparaTo 和Compare方法 与equals和HashCode方法表持一致—hashCode和equals用于对元素的储存

|——–List:元素有序,可重复:相当于动态的数组

|—-ArrayList(主要的实现类) + LinkedList(适用于频繁的插入和删除)

  对于Collection的contains()方法判断依据 元素所在类的equals方法,如果元素使用自定义类的 重写自定义类中equals方法

Map 接口:具有映射关系 存放的键-值对

Key 使用set存储,不能重复;value用Collection存放,key-value 对构成entry,entry(Map.entrySet)使用Set存放

|—HashMap:线程不安全存放null 值

|—HashTable;线程安全的

|—Properties处理属性文件 ConcurrentHashMap:CAS的积极锁的操作

|—-TreeMap:按照可以所在类指定属性排序 Key必须要是同一个类型

Collections是集合的工作类,大部分static 的方法

1 package com.testCollection;
2
3 public class Empolyee implements Comparable{
4
5 private String name ;
6 private Integer age;
7 private MyData birthday;
8 public String getName() {

作者: 库巴司机

为您推荐

返回顶部