java中的HashMap和Set


HashMap

HashMap是Map的实现类
在这里插入图片描述
HashMap是Map接口的实现类
HashMap类根据key值找到value值,所以key值是不能重复的
HashMap是数组+链表一起实现存储

属性

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
table数组用来存储链表的头结点,初始长度为16

常用方法

添加元素–put(key,value)

map.put("a", 111);
map.put("b", 222);
map.put("c", 333);
map.put("b", 888);
System.out.println(map);  //{a=111, b=888, c=333}

注意:

  • 如果添加相同键的元素,后面加入的元素的值会覆盖覆盖之前的值
  • 泛型里要写引用数据类型,不能写基本数据类型,要用基本数据类型,我们可以写它们的包装类
基本数据类型 包装类
byte Byte
short Short
int Integer
long Long
float Float
double Double
boolean Boolean
char Character
  • 键和值都可以是null
Map<String, String> map=new HashMap<String, String>();
map.put(null, "a");
map.put("s", null);
System.
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HashMapJava的一个集合类,用于存储键值对。下面是HashMap的基本用法: 引用\[3\]给出了创建HashMap对象的示例代码: ```java HashMap<String, Integer> map = new HashMap<String, Integer>(); ``` 这段代码创建了一个HashMap对象,其键的类型是String,值的类型是Integer。 可以使用put()方法向HashMap添加键值对,示例如下: ```java map.put("key1", 1); map.put("key2", 2); map.put("key3", 3); ``` 这样就向HashMap添加了三个键值对。 可以使用get()方法根据键获取对应的值,示例如下: ```java int value = map.get("key1"); ``` 这样就可以获取到键为"key1"的值。 HashMap还提供了其他一些常用的方法,比如keySet()方法可以获取所有的键,示例如下: ```java Set<String> keys = map.keySet(); ``` 这样就可以获取到HashMap所有的键。 需要注意的是,HashMap的键是唯一的,如果添加相同的键,则会覆盖原有的值。 另外,HashMap是无序的,即键值对的顺序不会按照添加的顺序进行存储。如果需要按照添加顺序输出,可以使用LinkedHashMap,它继承自HashMap,但是会保持插入顺序。引用\[1\]和引用\[2\]给出了使用LinkedHashMap的示例代码。 希望以上信息对您有所帮助。 #### 引用[.reference_title] - *1* *2* [JavaMap使用详解](https://blog.csdn.net/qq_29689343/article/details/109853787)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Java HashMap的常用操作](https://blog.csdn.net/rqz__/article/details/129913020)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值