1.循环输出List
List
//原来的方式
forEach(String str:list1){
System.Out.Println(str);
}
//lambda表达式
list1.forEach(str -> System.Out.Println(str));
//或者
list1.forEach(System.Out::println);
2.循环输出Map
Map
map.put("A", 20);
map.put("B", 30);
map.put("C", 60);
map.put("D", 10);
map.put("E", 100);
//原来的方式
Set
forEach(String str : set){
System.Out.Println(str+":"+map.get(str)+",");
}
//lambda表达式
map.forEach((k,v) -> System.Out.Println(k+":"+ v +","););
3.对集合进行排序
List
//原来的方式
Collections.sort(list,new Comparator
@Override
public int compare(Integer a,Integer b){
return a.compareTo(b);
}
});
//lambda表达式
Collections.sort( list , (a , b) -> a.compareTo(b));
4.将对象集合(List) 中的属性取出放入另一个 List
//Test 中有num,answer,score三个属性
List
public static Test setValue(String tNum, String answer, double score) {
Test ssa = new Test();
ssa.setNum(tNum);
ssa.setDaAn(answer);
ssa.setScore(score);
return ssa;
}
//原来的方法
List
for(Test ssa : list){
temp.add(ssa.getDaAn);
}
//lambda表达式
List
5.将一个集合中的对象的值,组成另一个对象的集合
//Test 中有Num,daAn,score三个属性
//Test2中有answer,score
List
public static Test setValue(String tNum, String answer, double score) {
Test ssa = new Test();
ssa.setNum(tNum);
ssa.setDaAn(answer);
ssa.setScore(score);
return ssa;
}
//原来的方法
List
for(Test test : list){
Test2 test2 = new Test2();
test2.setAnswer(test.getAnswer());
test2.setScore(test.getScore());
list2.add(test2);
}
//lambda表达式
List
Test2 test2 = new Test2();
test2.setAnswer(test.getAnswer());
test2.setScore(test.getScore());
return test2;
}).cellect(Collectors.toList());
6.处理list集合中的数据
//list集合所有的字符串转成大写
List
//原来的方式
for(int i=0;i
}
//使用lambda表达式
list.stream().map(t -> t.toUpperCase()).collect(Collectors.toList()).forEach(System.out::println);
7.处理List集合,并转化为其他集合
List
//将list中的元素全部转化成大写,并保持List形态
List
//将list中的元素全部转化为大写,并转化为String类型,元素之间通过“,”分割
String result = list.Stream().map(x -> x.toUpperCase()).collect(Collectors.joining(","));
//将list中的元素全部转化为大写,并转化为Set
Set
8.取出List
List
IntSummaryStatistics re = lists.stream().mapToInt(x->x).summaryStatistics();
System.out.println("平均值:"+re.getAverage());
System.out.println("最大值:"+re.getMax());
System.out.println("最小值:"+re.getMin());
System.out.println("求和:"+re.getSum());
9.List
List
String [] arr = list.stream().toArray(String::new);
Object [] arr = list.stream().toArray();
String [] arr = list.stream().toArray(str -> new String[list.size()])