Map接口特点:
具有键值对的集合,通过键去访问值的内容
Map键是不能重复的,但是值是可以重复
键为K,即Key。值为V,即Value。
构造方法:
HashMap hw=new HashMap();//默认无参数构造
HashMap hw1=new HashMap(48);//默认大小,16,每次增加内容,占用的空间就会得到其平方(<>为泛型,表明只储存String和String类型的数据)
hw1.put("1","张三");hw1.put("2","李四");hw1.put("3","王五");
HashMap hw2=new HashMap(48,0.75f);//默认大小,0.75是其负载因子
HashMap hw3=new HashMap(hw1);//传递一个实现了Map接口的内容
常用方法:
//put(Object o1,Object o2)添加及修改的功能
//containsKey(Object K)判断集合中是否包含键K
//containsValue(Object value)判断集合中是否包含值value
//isEmpty()判断集合是否为空
//replace(Key k,Value v)进行更改Map的值
//clear()清空集合
//remove(Object Key)删除指定的key
//size()返回具有对应关系的个数
//get(Object key)得到指定key的value值
//keySet()得到map中所有的key
//values()返回所有值的集合
//EntrySet返回具有映射关系的Set集合
遍历HashMap
HashMap hw1=new HashMap();//默认无参数构造
hw1.put("1","张三");hw1.put("2","李四");hw1.put("3","王五");
System.out.println(hw1);
//方法1:直接打印map集合,通过Key键去得到Value值
Setss=hw1.keySet();//接收所有的键
for(String i:ss){
System.out.println("Key键:"+i+"Value值:"+hw1.get(i));
}
//方法2:获取所有的键和值
Set> set1=hw1.entrySet();//得到所有的键和值
for(Map.Entry ss1:set1){
System.out.println(ss1);
}
Collection:
是一个接口,位于list和set的父接口
Collections:一个工具类,拥有很多操作集合的方法
//Collections常用方法
// void sort (List list):排序,默认情况下是自然排序
//int binarySearch (List> list, T key):二分查找集合中的内容
// T max (Collection> coll):最大值(最小值类似用法)
//void reverse (List> list) :顺序反转
//void shuffle (List> list):随机置换
//void fill(List> list,String str):完全替换
//void swap(List> list,int index1,int index2):
//将两个索引位置的内容进行替换
//List Copy(List old,List new):复制集合