2021-10-10

用前须知

HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。

HashMap 实现了 Map 接口,根据键的 HashCode 值存储数据,具有很快的访问速度,最多允许一条记录的键为 null,不支持线程同步。

HashMap 是无序的,即不会记录插入的顺序。

HashMap 继承于AbstractMap,实现了 Map、Cloneable、java.io.Serializable 接口

HashMap 的 key 与 value 类型可以相同也可以不同,可以是字符串(String)类型的 key 和 value,也可以是整型(Integer)的 key 和字符串(String)类型的 value。

Map<String, String> map = Map.of("你想输入的","你想输入的", "你想输入的", "你想输入的");
Map<String, int> map = Map.of("你想输入的",1, "你想输入的", 1);

HashMap 类位于 java.util 包中,使用前需要引入它,语法格式:

import java.util.HashMap; // 引入 HashMap 类

简单实用

// 引入 HashMap      
import java.util.HashMap;

public class Test {
    public static void main(String[] args) {
        // 创建 HashMap 对象 Name
        HashMap<Integer, String> Name= new HashMap<Integer, String>();
        // 添加键值对
        Name.put(1, "good");
        Name.put(2, "hello");
        Name.put(3, "beautiful");
        Name.put(4, "hai");
        System.out.println(Name);
    }
}

访问

// 创建 HashMap 对象 Name
        HashMap<Integer, String> Name= new HashMap<Integer, String>();
        // 添加键值对
.
.
.
.
.
        System.out.println(Name.get(1));

删除

//删除某个 
Name.remove(1);
//删除全部
Name.clear();

计算

 System.out.println(Name.size());

 迭代 HashMap

可以用 for-each 来迭代 HashMap 中的元素



public class Test {
    public static void main(String[] args) {
        // 创建 HashMap 对象 Sites
        HashMap<Integer, String> Name= new HashMap<Integer, String>();
        // 添加键值对
        ...
        // 输出 key 和 value
        for (Integer i : Name.keySet()) {
            System.out.println("key: " + i + " value: " + Sites.get(i));
        }
        // 返回所有 value 值
        for(String value: Name.values()) {
          // 输出每一个value
          System.out.print(value + ", ");
        }
    }
}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

飞扬的青春㊣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值