java所有集合的父类为collection 所有集合类都直接或间接的实现了此类
在collection类下包括了list集合 和set集合
**list集合特点:**它是一个有序的,有下标的, 可重复的集合接口
**set集合的特点:**它是一个无序的,没有下标的,不可重复的集合接口
其中lest集合下面包括 ArrayList集合 与LinkList集合
Arraylist特点:底层为数组结构----查询快,增删慢
Linklist特点:底层为双链表结构-----查询慢,增删快
set集合常用的为hashSet集合 treeSet集合
hashSet特点:底层为map集合------它里面的元素不能重复-----做项目时常用
threeSet特点:它里面既有数组结构又有链表结构----虽然在set集合里面但可以对其排序—它的排序规则是根据默认的方法进行排序 如 1.2.3.4…a.b.c.d…
特例:
map集合:它有俩个泛型—一个对应为键–一个对应值。键不能重复,但值可以重复 ,其键与值一一对应。在实际项目中map集合往往会套用ArrayList集合,map< String,ArrayList >
对集合这块遍历的时候可以使用迭代器与加强for遍历
迭代器的使用:
ArrayList<String> arrayList = new ArrayList<>();
Iterator<String> iterator = arrayList.iterator();//创建迭代器
while(iterator.hasNext()){//判断是否有下一项
System.out.println(iterator.next());//打印出这一项
}
注意:map集合因为有俩个泛型不能直接遍历 需要调用 entrySet方法 映射出来再遍历如:
Map<String, String> hashMap = new HashMap<>();
Set<Entry<String, String>> entrySet = hashMap.entrySet();
for(Entry e:entrySet){
}
java中提供了对集合进行操作的包装类 collections 里面包括了大部分对集合的操作的方法