JAVA8 lambda 微解

来源:互联网 发布:2017百度春运大数据 编辑:程序博客网 时间:2024/06/06 19:27

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