Map 的遍历


public class maptest {

public static void main(String[] args) {

Map map = new HashMap();

        for (int i = 0; i < 5000000; i++) {

map.put(i, i+"-");

}

        System.out.println(map.size());

        long start = System.currentTimeMillis();

        for (Entry entry : map.entrySet()) {

/*        System.out.println(entry.getKey());

        System.out.println(entry.getValue());*/

            entry.getKey();

        }

        long end = System.currentTimeMillis();

        System.out.println("entrySet耗时:"+(end-start));

        long start1 = System.currentTimeMillis();

/*        Map map = new HashMap();

*/      for (Integer key : map.keySet()) {

            map.get(key);

        }

        long end1= System.currentTimeMillis();

        System.out.println("Keyset耗时:"+(end1-start1));

        long start2 = System.currentTimeMillis();

        Iterator> iterator = map.entrySet().iterator();

        while (iterator.hasNext()) {

        Entry entry = iterator.next();

            entry.getKey();

        }

        long end2 = System.currentTimeMillis();

        System.out.println("iterator()耗时:"+(end2-start2));

}

}

第一种map的遍历方式最快



阿里巴巴手册推荐

你可能感兴趣的:(Map 的遍历)