一Map接口
Map接口存贮一组键值对象,提供key到value的映射
Map:实现一一对应
hashmap
常用方法:
二、遍历Map集合
遍历key,通过key->value
方法1:通过迭代器
方法2:增强型for循环
方法二:遍历key——value对
1.遍历方式:
Set entry=map.entrySet();
增强型for/迭代器
2.遍历key的方式:
Set key=map.keySet ();
增强型for/迭代器
3.遍历value的方式:
Collection value=(Collection)map.value();
增强型for/迭代器
三、Collections类
作用:用于对集合的排序,替换和查找等操作
注意:Collections和Collection是不同的,前者是集合的操作类,后者是集合接口
常用方法:
1.排序
Collections.sort(list);
2.替换
Collections.fill(list,obj);
其他常用实现类:
List接口:Vector:线程安全的list集合
ConcurrentLinkedList:线程安全的链式表
Set接口:LinkedHashSet:有顺序的Hashset
Map接口:ConcurrentHashMap:线程安全的map
对所有数据分段上锁
HashTable的特点:
所有数据都上锁,如果一个线程访问了某段数据,其他 人都不能访问所有数据
四、泛型
将对象的类型作为参数,指定到其他类或者方法上,从而保证类型转换的安全性和稳定性
本质是参数化类型
泛型集合可以约束集合内的元素类型
典型泛型集合ArrayList、HashMap<K,V>
、<K,V>表示该泛型集合中的元素类型
泛型集合中的数据不再转换为Object
除了指定了集合中的元素类型外,泛型集合和之前学习的集合的用法完全一样
格式如下:
类1或者接口<类型实参>对象=new 类2<类型实参>();
例如:ArrayListlist=new ArrarList();
五、快速排序
代码如下: