首页 > 技术文章 > 键值对

hcjk12580 2019-12-06 21:41 原文

Map键值对

Map<key,value> map = new HashMap<key,value>();

key:键,相当于下标,但又与下标不同,它是需要自己定义类型,也就是说key可以存放基本数据类型、string;但是key的值不能重复,因为key值时hash集合存储的

value:存放的值,可以重复

Map键值对,其实与集合相差就是多了一个key键。

增加键值对

put(key,value);

查找

get(key);方法 放回value值

获取所有的key键

keySet(); 方法,返回的时Set泛型集合

获取所有的value值

value();方法,返回Collection泛型集合

获取Map的entrySet

Set<Map.Entry<String,Student>> set = map.entrySet();

 

Map键值对存放的类型是Entry <key,value>;

TreeMap与TreeSet区别

TreeMap的排序是根据key键排序,value值可以不像TreeSet一样必须实现Comparable接口.

如果key键没有实现Comparable接口,也不可以用TreeMap

键值对foreach和迭代器用法
        Student stu1 = new Student(1, "张三", 32, "成都");
Student stu2 = new Student(2, "李四", 12, "成都");
Student stu3 = new Student(3, "王五", 23, "成都");
Student stu4 = new Student(4, "赵六", 26, "成都");
Student stu5 = new Student(5, "周七", 29, "成都");

Map<String, Student> map = new HashMap<String, Student>();
map.put("zs", stu1);
map.put("ls", stu2);
map.put("ww", stu3);
map.put("zl", stu4);
map.put("zq", stu5);
//foreach
for (String string : map.keySet()) {
System.out.println(string+"=="+map.get(string));
}
//迭代器Iterator
Set<Map.Entry<String,Student>> entrys = map.entrySet();
Iterator<Map.Entry<String,Student>> it = entrys.iterator();
while(it.hasNext()){
           Map.Entry<String,Student>> en = it.next();
           System.out.println(en.getKey()+"==="+en.getValue());
      }

 

推荐阅读