HashMap 知道键值 如何获得key值

HashMap 知道键值 如何获得key值,第1张

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)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10101092.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存