集合Map接口

来源:互联网 发布:汽车管家软件 编辑:程序博客网 时间:2024/06/08 06:05

Map接口只介绍常用的hashMap子类
Map 以key-value的形式存储数据

import java.util.Collection;import java.util.HashMap;import java.util.Map.Entry;import java.util.Set;public class MapTest {    public static void main(String[] args) {        // 需要分别指定key和value的类型        HashMap<String, Integer> hm1 = new HashMap<String,Integer>();        // put 添加数据  key必须有唯一性,不能重复,value 没有限制        hm1.put("张三", 80);        hm1.put("李四", 0);        // 通过key获取value的值        int s1 = hm1.get("张三");        int s2 = hm1.get("李四");        System.out.println(s1+"===="+s2);        // 如果key有值 会替换原来的值        hm1.put("张三", 50);        int s3 = hm1.get("张三");        System.out.println(s3);        // 如果没有值  取出来是一个null的对象        // 分两步        // Integer temp = hm1.get("王五");// temp = null        // int s4 = temp.intValue();// 产生空指针异常//      int s4 = hm1.get("王五");//      System.out.println(s4);        // 写引用类型  防止程序崩溃        Integer s5 = hm1.get("王五");        System.out.println(s5);        // 集合获取基本类型,需要获取对应的引用类型,然后进行不为null的判断在进行基本类型的转换        // HashMap的遍历:        // 1.遍历所有的key        // 2.遍历所有的value        // 3.遍历所有的key-value        // 1.遍历所有的key,返回值是Set        Set<String> keSet = hm1.keySet();        for (String string : keSet) {            System.out.println(string);        }        // 2.遍历所有的value        Collection<Integer> list = hm1.values();        for (Integer integer : list) {            System.out.println(integer);        }        // 遍历key-value Set<Entry<K, V>> 固定格式 修改泛型        Set<Entry<String, Integer>> entries = hm1.entrySet();        System.out.println(hm1.toString());        for (Entry<String, Integer> entry : entries) {            String key = entry.getKey(); // 获取key            Integer value = entry.getValue(); // 获取value            System.out.println(key + "=" + value);        }       }}
原创粉丝点击