map中是怎么实现通过key找到value

map中是怎么实现通过key找到value,第1张

Map<String,String> map=new HashMap<String,String>();

mapput("1","AA");

mapput("2","BB");

mapput("3","CC");

String AA=mapget("1");

String BB=mapget("2");

String CC=mapget("3");

java hashmap 得到指定key的value的方法:

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;

1、mapentrySet()获取键值对列表,即a=1;

2、mapvalues()获取value集合

3、mapkeySet()获取key集合;并通过key获取对应value的值

public static void main(String[] args) {

javautilMap<String, String> map = new HashMap<>();

mapput("a", "1");

mapput("b", "2");

mapput("c", "3");

mapput("d", "4");

mapput("e", "5");

mapput("f", "6");

for (Entry<String, String> s : mapentrySet()) {

Systemoutprintln("键值对:" + s);

}

for (String s : mapvalues()) {

Systemoutprintln("values:" + s);

}

for (String s : mapkeySet()) {

Systemoutprintln("key:" + s);

Systemoutprintln("values:" + mapget(s));

}

Systemoutprintln(mapgetOrDefault("g", "28342849284923"));

}

你是否已经对每次从Map中取得关键字然后再取得相应的值感觉厌倦?使用MapEntry类,你可以得到在同一时间得到所有的信息。

标准的Map访问方法如下:

Set

keys

=

mapkeySet(

);

if(keys

!=

null)

{

Iterator

iterator

=

keysiterator(

方法1:keySet()

HashMap hashmp = ne HashMap();

hashmpput("aa", "111");

Set set = hashmpkeySet();

Iterator iter = setiterator();

while (iterhasNext()) {

String key = (String) iternext();

// printkey}

// traverse

for (String key : listget(pos)keySet() ) {

myKey = key;}

方法2:entrySet()

HashMap map;

Iterator i = mapentrySet()iterator();

while (ihasNext()) {

Object obj = inext();

String key = objtoString();}

// or

while (ihasNext()) {

Entry entry = (javautilMapEntry)itnext();

entrygetkey();

entrygetValue();}

扩展资料:

JavaMap集合

1Map集合没有继承Collection接口,其提供的是key到value的映射,Map中不能包含相同的key值,每个key只能影射一个相同的valuekey值还决定了存储对象在映射中的存储位置。

但不是key对象本身决定的,而是通过散列技术进行处理,可产生一个散列码的整数值,散列码通常用作一个偏移量,该偏移量对应分配给映射的内存区域的起始位置,从而确定存储对象在映射中的存储位置Map集合包括Map接口以及Map接口所实现的类。

2Map集合没有继承Collection接口,其提供的是key到value的映射,Map中不能包含相同的key值,每个key只能影射一个相同的valuekey值还决定了存储对象在映射中的存储位置。

但不是key对象本身决定的,而是通过散列技术进行处理,可产生一个散列码的整数值,散列码通常用作一个偏移量,该偏移量对应分配给映射的内存区域的起始位置,从而确定存储对象在映射中的存储位置Map集合包括Map接口以及Map接口所实现的类。

参考资料:

博客园-Map / HashMap 获取Key值的方法

Mapmap=new HashMap<>();mapput("a", "a");mapput("b", "b");mapput("c", "c");mapput("d", "d");Set>st=mapentrySet(); Iterator>ig=stiterator();

while(ighasNext()){

Systemoutprintln(ignext());

}

以上就是关于map中是怎么实现通过key找到value全部的内容,包括:map中是怎么实现通过key找到value、java hashmap 得到指定key的value、java中map怎么输出!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存