【Java】【集合框架】集合框架(map)

集合框架(map接口)

  1. Map是双列集合的根接口,Collection是单列集合的根接口
  2. Map的键是唯一的,Collection的子体系Set也是唯一的
  3. Map集合的数据结构只针对键有效,跟值无关。Collection结合的数据是针对元素有效。
  4. Set体系基于Map体系。Set将元素当做Map的Key使用,Value为空。
    Map体系图:HashMap,TreeMap。
  5. 基本应用
public class Demo1_HashMap {
    public static void main(String[] args) {
        Map map = new HashMap<>();
        map.put("张三", 23);
        map.put("李四", 24);
        map.put("王五", 25);
        
        System.out.println(map);
    }
}
  1. containsKey和containsValue
public class Demo1_HashMap {
    public static void main(String[] args) {
        Map map = new HashMap<>();
        map.put("张三", 23);
        map.put("李四", 24);
        map.put("王五", 25);
        
        System.out.println(map.containsKey("张三"));
        System.out.println(map.containsValue(23));
        System.out.println(map);
    }
}
  1. keySet和Values
public class Demo1_HashMap {
    public static void main(String[] args) {
        Map map = new HashMap<>();
        map.put("张三", 23);
        map.put("李四", 24);
        map.put("王五", 25);
        
        System.out.println(map.keySet());
        System.out.println(map.values());
    }
}
  1. 通过键迭代值
public class Demo1_HashMap {
    public static void main(String[] args) {
        Map map = new HashMap<>();
        map.put("张三", 23);
        map.put("李四", 24);
        map.put("王五", 25);
        
        Iterator it = map.keySet().iterator();
        while(it.hasNext()){
            System.out.println(map.get(it.next()));
        }
    }
}

// 方法2
public class Demo1_HashMap {
    public static void main(String[] args) {
        Map map = new HashMap<>();
        map.put("张三", 23);
        map.put("李四", 24);
        map.put("王五", 25);
        
        for (String k : map.keySet()) {
            System.out.println(map.get(k));
        }
    }
}

你可能感兴趣的:(【Java】【集合框架】集合框架(map))