java Map 怎么遍历

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java Map 怎么遍历相关的知识,希望对你有一定的参考价值。

怎么遍历最快的

参考技术A

这个其实有点吹毛求疵了。代码应该在可读性要求满足的情况下实现高性能。

不知道你有没有听过clean code概念,clean code是一本书的名字,有兴趣可以拿来读一读。可以认为包含四个原则

1、高可读性性,即代码明白易懂

2、高扩展性,即在源代码的基础上需要改动很小就可以增加新的功能。

3、可测试性,现在的流行的敏捷开发,特别看重测试,有个方法叫做测试驱动开发,这也是一本书的名字,可以读一下。

4、高性能,在满足其他要求的基础上关注这个要求。

当然有时候我们需要再可读性和高性能之间取得一个平衡。

我能提供的代码如下:

/*
 * for me, this is a time, in which never write java code.
 * e-mail:qinchuanqing918@sina.com
 * data:2015/5/22
 * author:qcq
 * */
package com.nokia;

import java.util.HashMap;
import java.util.Map;
import java.util.Random;
import java.util.Set;

public class MapIter 

public static void main(String[] args) 
Map<Integer, Integer> data = new HashMap<Integer, Integer>();
Random rand = new Random();
for (int i = 0; i < 100; i++)
data.put(i, rand.nextInt());

/*The first method print with key and value pair*/
Set<Integer> keyset = data.keySet();
for (Integer key:keyset)
System.out.println(key + " " + data.get(key));

/*The second method print directly*/
System.out.println(data);


本回答被提问者和网友采纳
参考技术B 两种方法:
一种是 Entry;map.entrySet();
如果要遍历最快的话 我觉得应该是用迭代器遍历,不需要查找顺序的一个个打印肯定是最快
Iterator<Entry<String, Integer>> it = map.entrySet().iterator();
while (it.hasNext())
Map.Entry<String, Integer> entry = it.next();
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println("key = " + key + "; value = " + value);


另一种是 key;map.keySet();

以上是关于java Map 怎么遍历的主要内容,如果未能解决你的问题,请参考以下文章

java Map 怎么遍历

Java中怎么遍历map中value值

java Map 怎么遍历

java Map 怎么遍历

js怎么遍历我后台传过来的Map

JAVA中Map类对象如何实现遍历