集合(5)—Map之HashMap()

来源:互联网 发布:新海软件 拖欠工资 编辑:程序博客网 时间:2024/06/05 17:30
  1. 定义

    • .Map接口提供了一中种映射关系,其中的元素是以键值对(key- value)的形式存储 ,能够实现根据键(key)快速查找值(value)

    • .键(key)和值(value)可以是任意类型的变量

    • .Map中的键值对以Entry类型的对象实例形式存在的

    • .key值不可重复,value值可以重复

    • .每个键最多只能映射到一个值

    • .Map接口提供了分别返回key值集合、value值集合以及Entry(键值对)集合的方法

    • .Map支持泛型,形式如:Map< K,V > K表示key值类型,V表value值类

  2. 实现类

    • HashMap是Map的一个重要实现类,也是最常用的基于哈希表实现,

    • HashMap中的Entry对象是无序排列的

    • key值和value值都可以为null,但hashMap只能有一个key值为null的映射(key值不可重复)

  3. 使用方法

    • 声明变量
Map< String,Student > students = new HashMap< String,Student >();//使用了泛型
  • get()方法
    get(Object key)返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null,
    就是说集合中有ID这个键值对就返回value,否则返回null

  • keyset()方法

//通过keyset方法,返回Map中所有键的set集合Set<String> keyset = students.keySet();//此时keyset中包含是所有的键//遍历keyset,取得每一个键,再调用get方法取得每个键对应的valuefor (String stu : keyset) {    Student st = students.get(stu);    if(st != null){    System.out.println("学生:"+st.name);    }}
0 0