java mapjava Map 根据Map的值(value)取键(key)

java map  时间:2022-02-25  阅读:()

java map .put 方法

被222覆盖了,因为你的两个key都是1。Map是以K-Value的键值对形式来存储的,不能包含相同的key,每个key只能映射一个value。 如果想实现一个key保存两个value,可以参考以下代码: public class test { public static void main(String[] args) { String str1 = new String("xx"); String str2 = new String("xx"); System.out.println(str1 == str2); Map<String ,String> map = new IdentityHashMap<String ,String>(); map.put(str1, "nihao"); map.put(str2, "baiduzhidao"); for(Entry<String,String> entry : map.entrySet()) { System.out.println(entry.getKey()+"? ?" + entry.getValue()); } System.out.println("? ? ?containsKey---> " + map.containsKey("xx")); System.out.println("str1 containsKey---> " + map.containsKey(str1)); System.out.println("str2 containsKey---> " + map.containsKey(str2)); System.out.println("? ? value----> " + map.get("xx")); System.out.println("str1? value----> " + map.get(str1)); System.out.println("str2? value----> " + map.get(str2)); } } 再来看一下运行后的结果: false xx? ?baiduzhidao xx? ?nihao containsKey---> false str1 containsKey---> true str2 containsKey---> true value----> null str1? value----> nihao str2? value----> baiduzhidao 我们可以知道IdentityHashMap是靠对象来判断key是否相等的,如果我们一个key需要保存多个value的时候就需要使用到这个IdentityHashMap类,这样我们我们就可以需要的时候使用到这个类了。 扩展资料: Map接口中键和值一一映射. 可以通过键来获取值。 给定一个键和一个值,你可以将该值存储在一个Map对象. 之后,你可以通过键来访问对应的值。 当访问的值不存在的时候,方法就会抛出一个NoSuchElementException异常. 当对象的类型和Map里元素类型不兼容的时候,就会抛出一个 ClassCastException异常。 当在不允许使用Null对象的Map中使用Null对象,会抛出一个NullPointerException 异常。 当尝试修改一个只读的Map时,会抛出一个UnsupportedOperationException异常。 参考资料: Java官方API?MapJava Platform SE 7) 菜鸟教程-Java Map 接口

java list 与map有什么区别??

List接口 继承collection接口,Map是个顶级接口 List此接口的用户可以对列表中每个元素的插入位置进行精确地控制。 用户可以根据元素的整数 索引(在列表中的位置)访问元素,并搜索列表中的元素 map将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值 简单的说就是list只能保存一列表;Map能保存2列表

java Map 根据Map的值(value)取键(key)

java根据Map的值(value)取键(key) 的实现方法有4种,分别为: (1)使用e68a84e799bee5baa631333366303861for循环遍历 (2)使用Iterator迭代器 (3)使用KeySet迭代 (4)使用EnterySet迭代 下面为以上4种方法具体实现的代码: 1、使用for循环遍历 public static Object getKey(HashMap<Object,Object> map, String v) { String key = ""; for (Map.Entry<String, Object> m :map.entrySet()) ?{ if (m.getValue().equals(v)) { key = m.getKey(); }} return key; } 2、使用Iterator迭代器 public static Object getKey(HashMap<Object,Object> map, String v) { Set set = map.entrySet(); Iterator iterator=set.iterator(); String key = ""; while (iterator.hasNext()) { Map.Entry<String, Object> enter = (Entry<String, Object>) iterator.next(); if (enter.getValue().equals(v)) { key = enter.getKey(); }} return key; } 3、使用KeySet迭代 public static Object getKey(HashMap<Object,Object> map, String v) { Iterator<Object> it = map.keySet().iterator(); while (it.hasNext()) { String key = it.next().toString(); if ((String) map.get(key).equals(v)) return key; } return null; } 4、使用EnterySet迭代 public static Object getKey(HashMap<Object,Object> map, String v) { String key = ""; Iterator it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry entry = (Entry) it.next(); Object obj = entry.getValue(); if (obj != null && obj.equals(value)) { key = (String) entry.getKey(); }} return key; } 扩展资料: java获取map的key和value的方法: (1)?通过map.keySet()方法,先获取map的key,然后根据key获取对应的value。 for(String key : map.keySet()){ String value = map.get(key); System.out.println(key+"? "+value); } Iterator<String> iter = map.keySet().iterator(); while(iter.hasNext()){ String key=iter.next(); String value = map.get(key); System.out.println(key+" "+value); } (2)通过map.entrySet()方法,循环map里面的每一对键值对,然后获取key和value。 for(Entry<String, String> vo : map.entrySet()) { vo.getKey(); vo.getValue(); System.out.println(vo.getKey()+"? "+vo.getValue()); } Iterator<Entry<String,String>> iter = map.entrySet().iterator(); while(iter.hasNext()){ Entry<String,String> entry = iter.next(); String key = entry.getKey(); String value = entry.getValue(); System.out.println(key+" "+value); } 参考资料来源:JAVA官方文档-Map

cera:秋季美国便宜VPS促销,低至24/月起,多款VPS配置,自带免费Windows

介绍:819云怎么样?819云创办于2019,由一家从2017年开始从业的idc行业商家创办,主要从事云服务器,和物理机器819云—-带来了9月最新的秋季便宜vps促销活动,一共4款便宜vps,从2~32G内存,支持Windows系统,…高速建站的美国vps位于洛杉矶cera机房,服务器接入1Gbps带宽,采用魔方管理系统,适合新手玩耍!官方网站:https://www.8...

GigsGigsCloud 春节优惠2022 指定云服务器VPS主机85折循环优惠码

GigsGigsCloud商家在之前介绍的还是比较多的,因为之前我一直有几台机器在使用,只是最近几年网站都陆续转型删除掉不少的网站和闲置域名,包括今年也都减少网站开始转型自媒体方向。GigsGigsCloud 商家产品还是比较有特色的,有提供香港、新加坡等亚洲机房的云服务器、VPS和独立服务器等。第一、新春优惠活动优惠码:CNY2022-15OFF截止到正月初二,我们可以使用上述优惠码在购买指定G...

天上云月付572元,起香港三网CN2直连,独立服务器88折优惠,香港沙田机房

天上云怎么样?天上云隶属于成都天上云网络科技有限公司,是一家提供云服务器及物理服务器的国人商家,目前商家针对香港物理机在做优惠促销,香港沙田机房采用三网直连,其中电信走CN2,带宽为50Mbps,不限制流量,商家提供IPMI,可以自行管理,随意安装系统,目前E3-1225/16G的套餐低至572元每月,有做大规模业务的朋友可以看看。点击进入:天上云官方网站天上云香港物理机服务器套餐:香港沙田数据中...

java map为你推荐
mobilepartnermobile partner拔不上号,信号60%,连不上网络,老是提示连接被中止nasa中文官网NASA总部在哪里?呼叫中心搭建呼叫中心有几种建设方式啊?那种最省钱?物联卡官网物联卡9.9元100g流量卡是真的吗dnf客户端消失地下城勇士登录 客户端消失催收软件哪个好我也欠了好多都是七天贷款高利息的,没钱还,今天开始催收,还爆了我的通讯录,弄得我想死的心都有了!智能公共广播系统有谁知道公共广播系统都包括那些设备微软永久关闭实体店如何注销微软账户xp仿win7桌面主题xp系统win7主题下载,xp系统能装win7的主题吗?如果能上哪下?计算机编程基础学习电脑编程应该有什么基础?
美国虚拟主机推荐 已备案域名注册 汉邦高科域名注册 游戏服务器租用 东莞服务器租用 新网域名解析 外国空间 南昌服务器托管 京东商城0元抢购 100m空间 如何用qq邮箱发邮件 支付宝扫码领红包 腾讯总部在哪 服务器是干什么用的 ebay注册 网站防护 镇江高防服务器 sonya 香港云主机 更多