根据map的key值获取value值 有多个key怎么获取多个value值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了根据map的key值获取value值 有多个key怎么获取多个value值相关的知识,希望对你有一定的参考价值。

package test;import java.util.*;/** 取得Map中的key的集合用的方法是keySet,返回的是Set,
* 取得Map中的value的集合用的方法是values,返回的是Collect。
* 值得一提的是,本题中是HashMap,如果改为TreeMap,keySet()方法返回的便会按着字母顺序排列,原因很简单,因为在TreeMap中即时按着这个顺序排列的。*/public class Test_Map
public static void main(String[] args) throws Exception
Map map = new HashMap();
map.put("one", 1);map.put("two", 2);
map.put("three", 3);
//得到value的方法
System.out.println("========得到value的方法========");
Collection c = map.values();
System.out.println(c);
Iterator iter1 = (Iterator)map.values().iterator();
while(iter1.hasNext())
System.out.println(iter1.next());//得到key的方法
System.out.println("========得到key的方法========");
Collection s = map.keySet();
System.out.println(s);
Iterator iter2 = (Iterator)map.keySet().iterator();
参考技术A Object obj = new Object();
obj = map.get("key");
map是Map的那个对象,“key”是表示key的那个值,一般是个字符串

java map表里,key值能否映射到多个Value?

参考技术A

map中的key和value是一一对应的,但是这里的value可以是一个集合,里面可能包含很多值,这样可以实现。使用时,要循环来访问。

Map的可以唯一无序,value无序且不唯一,所以不同的key会有相同的value,但是他的对内存中还是存储着多个相同的value,这是因为在存到里面的时候是根据hash码存的,hash是唯一的。

扩展资料:

注:将可变对象用作映射键时必须格外小心。当对象是映射中某个键时,如果以影响 equals比较的方式更改了对象的值,则映射的行为将是不确定的。此项禁止的一种特殊情况是不允许某个映射将自身作为一个键包含。虽然允许某个映射将自身作为值包含,但请格外小心:在这样的映射上 equals 和 hashCode方法的定义将不再是明确的。

参考资料来源:百度百科-Map

以上是关于根据map的key值获取value值 有多个key怎么获取多个value值的主要内容,如果未能解决你的问题,请参考以下文章

如何根据key取map里面的value值

java map表里,key值能否映射到多个Value?

如何通过获取map中的key来获得与key对应的value值,进行运算

java用map通过value能找到key吗

java中的map怎么根据key值修改value值?

怎样获取map里指定key对应的value值