Java集合框架Map

Map接口

1.存储一组成对的key-value的对象
2.提供的是key到value的映射
3.提供key来检索(key是唯一的、无序的;实际上就是Set集合)
4.Map接口常用的实现类是HashMap


Map接口有哪些常用的方法?

Object put(key,value)
以键值对的形式存储元素
当存在相同的key时,会替换掉原有的value

Object get(key)
获取key对应的value值
返回的是Object类型,注意类型转换

int size()
获取元素的个数

Object remove(key)
删除key对应的键值对,并返回这个value值

Collection values()
获取所有的value值,以集合的形式返回

Set keySet()
获取所有的key值,以Set集合的方式返回

boolean containsKey(key)
是否包含指定key


Map集合的遍历

Map的输出顺序与添加顺序无关

有两个思路,三个方法
先来创建一个Map集合

Map map = new HashMap();
  map.put("china", "中国");
  map.put("uk", "英国");
  map.put("us", "美国");

思路一
通过遍历key,通过key来找到value
方法一:通过增强型for

//增强型for循环遍历set
  for(Object o:map.keySet()) {
   String key = (String)o;
   System.out.println(key+"-"+map.get(key));
  }

方法二:通过迭代器Iterator

Iterator interator1 = map.keySet().iterator();
  while(interator1.hasNext()) {
   String key = interator1.next().toString();
   System.out.println(key+"-"+map.get(key));
  }

思路二
通过遍历key-value(本质上是一个Set集合,因为它是无序的、唯一的)

for(Object o:map.entrySet()) {
   Map.Entry kv = (Map.Entry)o;
   System.out.println(kv.getKey()+"-"+kv.getValue());
  }

涉及到的知识点:
1.Map接口的entry Set()方法
用来获取所有的键值对,返回值类型是Object

2.Map中的键值对实际是一种Map-Entry类型的数据

3.getKey()方法
获取key值

4.getValue()方法
获取value值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: Java集合框架中的Map是一种键值对的数据结构,可以存储一组具有唯一键和对应值的元素。使用泛型可以在编译时进行类型检查,确保集合中只能存储指定类型的元素,提高代码的可读性和安全性。 在引用中的示例代码中,List<String>定义了一个只能存储字符串类型元素的列表。在引用中的示例代码中,Collection<String>和Collection<Integer>分别定义了只能存储字符串类型和整数类型元素的集合。使用泛型通配符可以增加集合的灵活性。比如在coll.removeAll(c)方法中,传入的Collection对象的泛型可以是任意类型。另外,泛型还可以应用于Map集合,如引用中的示例代码中,Set<Map.Entry<String,String>>定义了只能存储键值对类型为String的元素的集合。 综上所述,Java集合框架中的Map和泛型可以一起使用,通过泛型可以指定集合中存储的元素类型,增加代码的可读性和类型安全性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [java基础中的--------Map+泛型](https://blog.csdn.net/liutaiwu/article/details/107915445)[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^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值