在这篇文章中,我将向您展示如何用新的java 8 foreach语句循环一个list和map。

1、foreach 和 map

1.1、常规循环map常用的方法。

map<string ,integer> items = new hashmap<>(); 

items.put("a",10); 
items.put("b",20); 
items.put("c",30); 
items.put("d",40); 
items.put("e",50); 
items.put("f",60); 

for(map.entry<string integer> entry : items.entryset()){ 
 system.out.println("item : "+enty.getkey() + " count :" + entry.getvlaue()) 
} 

1.2 、在java 8中, 你可以用foreach + lambda表达式来循环map

map<string, integer> items = new hashmap<>(); 
items.put("a", 10); 

items.put("b", 20); 
items.put("c", 30); 
items.put("d", 40); 

items.put("e", 50); 
items.put("f", 60); 
items.foreach((k,v)->system.out.println(" item : "+ k + " count : " + v)); 
//items.foreach((k,v)->{system.out.println(" item : "+ k + " count : " + v);}); 
items.foreach((k,v)->{ 
 system.out.println("item : " + k + " count : " + v); 
 if("e".equals(k)){ 
 system.out.println("hello e"); 
 } 
}); 

2、foreach 和 list

2.1、常规的循环list的方法

 list<string> items = new arraylist<>(); 
 items.add("anna"); 
 items.add("brian"); 
 items.add("cici"); 
 items.add("elena"); 
 //常规的循环list的方法 
 for(string item : items){ 
  system.out.println(item); 
 } 

2.2、在java 8中, 你可以用foreach + lambda表达式  或者方法调用来循环map

map<string, integer> items = new hashmap<>(); 
items.put("a", 10); 
items.put("b", 20); 
items.put("c", 30); 
items.put("d", 40); 
items.put("e", 50); 
items.put("f", 60); 
//在java 8中, 你可以用foreach + lambda表达式来循环map 
//输出上面put的所有列表 
items.foreach((k,v)->system.out.println(" item : "+ k + " count : " + v)); 
//items.foreach((k,v)->{system.out.println(" item : "+ k + " count : " + v);}); 
//输出上面put的所有列表 + hello e 
items.foreach((k,v)->{ 
 system.out.println("item : " + k + " count : " + v); 
 if("e".equals(k)){ 
 system.out.println("hello e"); 
 } 
}); 
map
package com.foreach.learn; 
import java.util.hashmap; 
import java.util.map; 
public class foreachlearnmap { 
 public static void main(string[] args) { 
 //foreach 和 map 
 map<string, integer> items = new hashmap<>(); 
 items.put("a", 10); 
 items.put("b", 20); 
 items.put("c", 30); 
 items.put("d", 40); 
 items.put("e", 50); 
 items.put("f", 60); 
 //常规的循环map的方法 
 for(map.entry<string, integer> entry : items.entryset()) { 
  system.out.println(" item : "+ entry.getkey() + " count : " + entry.getvalue());  
 } 
 //在java 8中, 你可以用foreach + lambda表达式来循环map 
 //输出上面put的所有列表 
 items.foreach((k,v)->system.out.println(" item : "+ k + " count : " + v)); 
 //items.foreach((k,v)->{system.out.println(" item : "+ k + " count : " + v);}); 
 //输出上面put的所有列表 + hello e 
 items.foreach((k,v)->{ 
  system.out.println("item : " + k + " count : " + v); 
 if("e".equals(k)){ 
  system.out.println("hello e"); 
  } 
 });  

 } 

} 
lsit:

package com.foreach.learn; 
import java.util.arraylist; 
import java.util.list; 
public class foreachlearnlist { 
 public static void main(string[] args) {  
 list<string> items = new arraylist<>(); 
 items.add("anna"); 
 items.add("brian"); 
 items.add("cici"); 
 items.add("elena"); 
 //常规的循环list的方法 
 for(string item : items){ 
  system.out.println(item); 
 } 
 //在java 8中, 你可以用foreach + lambda表达式 或者方法调用来循环map 
 //lambda 
 //输出 : anna, brian, cici, elena 
 items.foreach(item->system.out.println(item)); 
 //输出 cici 
 items.foreach(item->{ 
 if("cici".equals(item)){ 
  system.out.println(item); 
  } 
 }); 
 //方法调用 
 //输出 : anna, brian, cici, elena 
 items.foreach(system.out::println); 
 //stream and filter 
 //输出brian 
 items.stream() 
 .filter(s->s.contains("brian")) 
 .foreach(system.out::println); 
 } 

} 

总结

到此这篇关于java8中foreach语句循环一个list和map的文章就介绍到这了,更多相关java8 foreach循环list和map内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!