java中可以使用hashmap的entry来查找key值,示例如下:
private static ArrayList valueGetKey(Map map,String value) {Set set = mapentrySet();//新建一个不可重复的集合
ArrayList arr = new ArrayList<>();//新建一个集合
Iterator it = setiterator();//遍历的类
while(ithasNext()) {
MapEntry entry = (MapEntry)itnext();//找到所有key-value对集合
if(entrygetValue()equals(value)) {//通过判断是否有该value值
int s = (int)entrygetKey();//取得key值
arradd(s);
}
}
return arr;
}
package test;import javautil;/ 取得Map中的key的集合用的方法是keySet,返回的是Set, 取得Map中的value的集合用的方法是values,返回的是Collect。 值得一提的是,本题中是HashMap,如果改为TreeMap,keySet()方法返回的便会按着字母顺
import javautilHashMap;
import javautilIterator;
import javautilMap;
import javautilSet;
public class HashMapKey {
public static void main(String[]args){
String value = "map";
Map<String,String> map = new HashMap<String,String>();//HashMap
mapput("0", "what"); //增加值
mapput("1", value);
mapput("2", "asdf");
Set<String> mapSet = mapkeySet(); //获取所有的key值 为set的集合
Iterator<String> itor = mapSetiterator();//获取key的Iterator便利
while(itorhasNext()){//存在下一个值
String key = itornext();//当前key值
if(mapget(key)equals(value)){//获取value 与 所知道的value比较
Systemoutprintln("你要找的key :"+key);//相等输出key
}
}
}
}
我本军团为你解答
HashMap和ArrayList结合起来用,向HashMap中存值时 把name存入ArrayList中:
HashMap a = new HashMap();
ArrayList al = new ArrayList();
aput("name1", "abcdef"); // key是name,value是字符串abcdef
aladd("name1");
aput("name2","me");
aladd("name2");
aput("name3","you");
aladd("name3");
aput("name4","he");
aladd("name4");
for(int i=0;i<alsize();i++){
Systemoutprintln(aget(alget(i)));
}
HashMap hm=new HashMap();
hmput("value1","a");
hmput("value2","b");
Object[] b=hmkeySet()toArray();
for(int i=0;i<blength;i++)
{
Systemoutprintln(b[i]);
}
以上就是关于java 怎样通过hashmap的value得到key全部的内容,包括:java 怎样通过hashmap的value得到key、如何得到map集合中的value值、HashMap 知道键值 如何获得key值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)