java lambda 表达式
2017-10-23 10:45
204 查看
private static void testLambda4(){ //计算 count, min, max, sum, and average for numbers List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); IntSummaryStatistics stats = numbers .stream() .mapToInt((x) -> x) .summaryStatistics(); System.out.println("List中最大的数字 : " + stats.getMax()); System.out.println("List中最小的数字 : " + stats.getMin()); System.out.println("所有数字的总和 : " + stats.getSum()); System.out.println("所有数字的平均值 : " + stats.getAverage()); } private static void testLambda3(){ String [] names={"aa1","aa4","aa3","aa2"}; //排序使用默认比较 Arrays.sort(names); //排序使用自定义比较器-普通 Comparator<String> compar=new Comparator<String>() { @Override public int compare(String o1, String o2) { return o1.compareTo(o2); } }; Arrays.sort(names,compar); for(String str:names){ System.out.println("普通:"+str); } //排序使用自定义比较器-lambda Comparator<String> compar2=(String str1,String str2)->{return str1.compareTo(str2);}; Arrays.sort(names,compar2); for(String str:names){ System.out.println("lambda:"+str); } //排序使用自定义比较器-lambda-简写 Arrays.sort(names,(str1,str2)->{return str2.compareTo(str1);}); for(String str:names){ System.out.println("lambda-简写:"+str); } } private static void testLambda2(){ String [] names={"aa1","aa4","aa3","aa2"}; List<String> nameList= Arrays.asList(names);//调用Arrays工具类的asList方法 把数组转变成集合 //老循环方式 for (String name:nameList ) { System.out.println("老:"+name); } //stream().map List<Boolean> nameList_map= nameList.stream().map(name->name.equals("aa3")).collect(Collectors.toList()); nameList_map.forEach(b->System.out.println("map:"+b)); //stream().filter List<String> nameList_filter= nameList.stream().filter(name->name.equals("aa2")).collect(Collectors.toList()); nameList_filter.forEach(name->System.out.println("filter:"+name)); //stream().findFirst() String first= nameList.stream().findFirst().get(); } private static void testLambda(){ String [] names={"aa1","aa4","aa3","aa2"}; List<String> nameList= Arrays.asList(names);//调用Arrays工具类的asList方法 把数组转变成集合 //老循环方式 for (String name:nameList ) { System.out.println("老:"+name); } //新循环方式一 nameList.forEach(name->System.out.println("排序前:"+name)); Collections.sort(nameList);//调用Collections工具类的sort方法对集合进行排序 nameList.forEach(name->System.out.println("排序后:"+name)); //新循环方式二 nameList.forEach(System.out::println); }
java Lambda
相关文章推荐
- Java 8 lambda表达式的10个示例
- JAVA8之lambda表达式详解,及stream中的lambda使用
- java8 lambda 表达式
- Java8 新特性之Lambda表达式
- Java8之lambda表达式详解
- 浅谈Java 7的闭包与Lambda表达式之优劣
- 浅谈Java 7的闭包与Lambda表达式之优劣
- java1.8 lambda表达式语法(二)
- Java8为什么引入Lambda表达式
- Java8 lambda表达式
- 深入探索Java 8 Lambda表达式
- java8之Lambda表达式 1:简介
- Java8中Lambda表达式的10个例子
- java8学习 -- lambda表达式
- 终于Get到了Java8的Lambda表达式,记录。
- java lambda表达式
- Java 8 之Lambda表达式
- Java若不为空则取其值的lambda表达式
- Java 8 新增特性Lambda表达式
- Java - 函数式编程,Lambda 表达式