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
}
}
}
}
我本军团为你解答
EL表达式怎么获取Map的动态key的方法:根据另外一个对象的id作为key来put,或者更加复杂的组合id+"string"作为一个key。
举例如下:
假设有一个情景:我们后台返回一个对象的list,我们根据对象的id作为key放一些关键的值作为value存入Map中。而前台负责显示Map中的关键指标。
我们的目的就是将大于80分的同学显示评级为良。接下来是前端的处理,先引入,标签。
大概就是这样子。如果map的key是一个复杂的组合,例如map(sgetId()+"-3班","良");这样子要获取key的话同样是上面的代码。
备注:如果要对字符串做更复杂的 *** 作,可以自己做标签库,或者使用<%@ taglib uri=">
EL是为了使JSP写起来更加简单。表达式语言的灵感来自于ECMAScript和XPath表达式语言,它提供了在JSP中简化表达式的方法,让Jsp的代码更加简化。
java根据Map的值(value)取键(key) 的实现方法有4种,分别为:
(1)使用for循环遍历
(2)使用Iterator迭代器
(3)使用KeySet迭代
(4)使用EnterySet迭代
下面为以上4种方法具体实现的代码:
1、使用for循环遍历
public static Object getKey(HashMap<Object,Object> map, String v) {
String key = "";
for (MapEntry<String, Object> m :mapentrySet()) {
if (mgetValue()equals(v)) {
key = mgetKey();
}}
return key;
}
2、使用Iterator迭代器
public static Object getKey(HashMap<Object,Object> map, String v) {
Set set = mapentrySet();
Iterator iterator=setiterator();
String key = "";
while (iteratorhasNext()) {
MapEntry<String, Object> enter = (Entry<String, Object>)
iteratornext();
if (entergetValue()equals(v)) {
key = entergetKey();
}}
return key;
}
3、使用KeySet迭代
public static Object getKey(HashMap<Object,Object> map, String v) {
Iterator<Object> it = mapkeySet()iterator();
while (ithasNext()) {
String key = itnext()toString();
if ((String) mapget(key)equals(v)) return key;
}
return null;
}
4、使用EnterySet迭代
public static Object getKey(HashMap<Object,Object> map, String v) {
String key = "";
Iterator it = mapentrySet()iterator();
while (ithasNext()) {
MapEntry entry = (Entry) itnext();
Object obj = entrygetValue();
if (obj != null && objequals(value)) {
key = (String) entrygetKey();
}}
return key;
}
扩展资料:
java获取map的key和value的方法:
(1) 通过mapkeySet()方法,先获取map的key,然后根据key获取对应的value。
for(String key : mapkeySet()){
String value = mapget(key);
Systemoutprintln(key+" "+value);
}
Iterator<String> iter = mapkeySet()iterator();
while(iterhasNext()){
String key=iternext();
String value = mapget(key);
Systemoutprintln(key+" "+value);
}
(2)通过mapentrySet()方法,循环map里面的每一对键值对,然后获取key和value。
for(Entry<String, String> vo : mapentrySet()) {
vogetKey();
vogetValue();
Systemoutprintln(vogetKey()+" "+vogetValue());
}
Iterator<Entry<String,String>> iter = mapentrySet()iterator();
while(iterhasNext()){
Entry<String,String> entry = iternext();
String key = entrygetKey();
String value = entrygetValue();
Systemoutprintln(key+" "+value);
}
参考资料来源:JAVA官方文档-Map
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
mapput("key1", "value1");
mapput("key2", "value2");
mapput("key3", "value3");
Set<String> keySet = mapkeySet();
int i = mapsize()-1;
Map<Integer, String> mapKey = new HashMap<Integer, String>();
Map<Integer, String> mapValue = new HashMap<Integer, String>();
for(javautilMapEntry<String, String> entry : mapentrySet()) {
//将原来MAP的VALUE放入新的MAP的VALUE里面
mapKeyput(i, entrygetValue());
//将原来MAP的KEY放入新的MAP的VALUE 里面
mapValueput(i, entrygetKey());
i--;
}
//打印KEY值
Systemoutprintln(mapKeyget(2));
//打印VALUE值
Systemoutprintln(mapValueget(0));
}
扩展资料:
java键值对的使用
Map集合没有继承Collection接口,但是其提供了key到value的映射。每一个key不能有相同,每个key只能映射一个value值。
下面通过一个程序来说明键值对的使用,下面是一个基本的键值对应用程序:
package Test;
import javautilCollection;
import javautilHashMap;
import javautilIterator;
import javautilMap;
import javautilSet;
public class KeyValue {
public static void main(String[] args) {
Map <String,String> map=new HashMap<>();
mapput("01", "张三");
mapput("02", "王五");
Set<String> set=mapkeySet();
Iterator <String> it=setiterator();
Systemoutprintln("key中集合元素:");
while(ithasNext()){
Systemoutprintln(itnext());
}
Collection <String> coll=mapvalues();
it=colliterator();
Systemoutprintln("value中集合元素:");
while(ithasNext()){
Systemoutprintln(itnext());
}
}
}
输出结果如图所示:
以上就是关于HashMap 知道键值 如何获得key值全部的内容,包括:HashMap 知道键值 如何获得key值、EL表达式怎么获取Map的动态key、java Map 根据Map的值(value)取键(key)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)