获取map的值主要有四种方法,这四种方法又分为两类:
一类是调用mapkeySet()方法来获取key和value的值,
另一类则是通过mapentrySet()方法来取值,
两者的区别在于,前者主要是先获取到所有的key的集合,当你需要查询value的值的时候需要通过key来查询value,后者则直接将key和value的键值对直接取出来,只用查询一次。
这样是取不到的,你先定义str 的值为a ,后你又改变str的值为b,那么a这个值就不存在map中了,map中的key是不能相同的,你分开定义就可以,如mapput(str,a);mapput(str1,b);这样就可以
publicstaticvoidmain(String[]args){Mapmap=newHashMap();mapput("1","v1");mapput("2","v2");for(Stringkey:mapkeySet()){Systemoutprintln("key="+key+"andvalue="+mapget(key));}}取key和value
public static void main(String[] args)
{
String[] keys = {"aaaa", "bbbb", "cccc", "bbbb"};
String[] values = {"aaaaValue", "bbbbValue1", "ccccValue", "bbbbValue2"};
Map<String, String> map = new HashMap<String, String>();
for (int i = 0; i < keyslength; i++)
{
if (!mapcontainsKey(keys[i]))
{
mapput(keys[i], values[i]);
}
}
for(String key : mapkeySet())
{
Systemoutprintln(key+"="+mapget(key));
}
}bbbb=bbbbValue1
aaaa=aaaaValue
cccc=ccccValue
举个例子:
Map<Integer, String> map = new HashMap<Integer, String>();
先拿所有的键:
Integer[] keys = mapkeySet()toArray(new Integer[0]);
然後随机一个键,找出该值:
Random random = new Random();
Integer randomKey = keys[randomnextInt(keyslength)];
String randomValue = mapget(randomKey);
//第一种:普遍使用,二次取值
Systemoutprintln("通过MapkeySet遍历key和value:");
for (String key : mapkeySet()) {
Systemoutprintln("key= "+ key + " and value= " + mapget(key));
}
//第二种
Systemoutprintln("通过MapentrySet使用iterator遍历key和value:");
Iterator<MapEntry<String, String>> it = mapentrySet()iterator();
while (ithasNext()) {
MapEntry<String, String> entry = itnext();
Systemoutprintln("key= " + entrygetKey() + " and value= " + entrygetValue());
}
以上就是关于如何取出 Map中key和value的值全部的内容,包括:如何取出 Map中key和value的值、java程序问题,代码在补充块内,map.get(str)只能取到4怎么才能取到key值对应的第一个value,,3、怎么获取map的key值进行判断等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)