JAVA Lambda表达是随着Java8的诞生而出现的。
Java SE 8中新引入的lambda语言特性以及这些特性背后的设计思想。这些特性包括:
- lambda表达式(又被成为“闭包”或“匿名方法”)
- 方法引用和构造方法引用
- 扩展的目标类型和类型推导
- 接口中的默认方法和静态方法
主要语法:
1.用() -> {} 代码块替代了整个匿名类;
2.
1.集合筛选,遍历
List<String> names = Arrays.asList("Java", "Scala", "C++", "Haskell", "Lisp");
List<String> aa = names.stream()
.filter(name -> name.length()<=4)
.filter(name -> name.startsWith("C"))
.collect(Collectors.toList());
System.out.println(JSONObject.toJSONString(aa));
2.集合排序
List<String> names = Arrays.asList("Java", "Scala", "C++", "Haskell", "Lisp");
list.sort((str1, str2) -> str1.compareTo(str2));
疑问:
1.lambda如何解析到方法的;
2.lambda的语法还需具体完善;
http://www.cnblogs.com/figure9/p/java-8-lambdas-insideout-language-features.html