传统map遍历和java8新的遍历方式比较

本篇文章主要是讲关于原始对map的遍历以及java8提供的新的遍历方式,个人感觉在代码的优化上是非常简洁的

1.创建测试数据

 Map map = new HashMap<>();
     map.put("key1", "value1");
     map.put("key2", "value2");
     map.put("key3", "value3");
     map.put("key4", 4);
     map.put("key5", 5);
     map.put("key6", 'h');

遍历方式一:

/**
 * 通过键遍历实现
 */
 
 System.out.println("--------------遍历方式一 --------------");
 for (String key : map.keySet()){
     System.out.println(key+"<------->"+map.get(key));
 }

java8新的遍历方式:

 System.out.println("java8新特性....");
 map.keySet().forEach(key -> System.out.println(key+"<-------->"+map.get(key)));

遍历方式二:

/**
 *  通过键值对遍历
 */
 
for(Map.Entry entry : map.entrySet()){
    System.out.println(entry.getKey()+"**********"+entry.getValue());
}

java8新的遍历方式:

System.out.println("java8新特性....");
map.entrySet().forEach(entry -> System.out.println(entry.getKey()+"********"+entry.getValue()));

遍历方式三:

/**
 *   通过值遍历,但是获取不到key
 */

for (Object value : map.values()){
    System.out.println("value: "+value);
}

java8新的遍历方式:

System.out.println("java8新特性....");
map.values().forEach(System.out::println);

遍历方式四:

/**
 *  java8特有的遍历方式
 */
 
System.out.println("java8独有的遍历方式..........");
map.forEach((key,value) -> System.out.println(key+"<------------>"+value));

也就是相当于map集合的遍历有七中遍历方式,通过以上代码可以看出,java8新的遍历方式不说性能方面,但是代码简洁和代码的数量上已经占据了优势。

你可能感兴趣的:(java8)