Java 8新增的Lambda表达式,我们可以很方便地并行操作大集合,
举几个例子:
1、利用stream().forEach()循环处理List;
[java] view plain copy
List<String> list = Lists.newArrayList();//新建一个List 用的google提供的Guava package com.google.common.collect;
list.add("1");
list.add("2");
list.add("3");
list.stream().forEach(string ->{
System.out.println(string);
});
运行结果:
1
2
3
2、利用stream().map()处理List,并给另外一个List赋值:
[java] view plain copy
List<String> list1 = Lists.newArrayList();
List<String> list2 = Lists.newArrayList();
list1.add("1");
list1.add("2");
list1.add("3");
list2 = list1.stream().map(string -> {
return "stream().map()处理之后:" + string;
}).collect(Collectors.toList());
list2.stream().forEach(string -> {
System.out.println(string);
});
运行结果:
stream().map()处理之后:1
stream().map()处理之后:2
stream().map()处理之后:3
3、利用stream().filter()处理List,对该List进行过滤处理:
[java] view plain copy
List<String> list1 = Lists.newArrayList();
List<String> list2 = Lists.newArrayList();
list1.add("1");
list1.add("1");
list1.add("2");
list1.add("3");
list2 = list1.stream().filter(s -> s != "1").collect(Collectors.toList());
System.out.println(list2.toString());
运行结果:
[2, 3] |
|