Java8 Lambda表达式:
使用Lambda表达式可以使代码变的更加紧凑,在C/C++中称为函数指针。
1、获取当前线程名:
new Thread(() ->System.out.println("java8 lambda表达式 “+” 当前线程是 "+Thread.currentThread().getName())).start();
2、将String类型数组中的元素按长度进行排序:
Arrays.sort(s, (param1,param2) ->Integer.compare(param1.length(), param2.length()));
利用StreamAPI#forEach()来输出排序后数组元素,但没有foreach简单。
Stream.of(s).forEach(parameter ->System.out.println(parameter));
方法引用更简单:
Stream.of(s).forEach(System.out::println);
Stream是元素的集合,这点让Stream看起来用些类似Iterator;
1、distinct():去掉重复的元素,形成新的Stream.
2、filter():对元素进行过滤,新的Stream只包含过滤后的元素
map():对元素进行遍历转换,新的Stream只包含新转换的元素
flatMap:对元素进行遍历,新的Stream包含新转换的元素和原本的元素
经典博客:
https://blog.csdn.net/hexingen/article/details/60337352
https://blog.csdn.net/zhengholien/article/details/75431575