当前位置:   article > 正文

java8新特性(2)-Lambda表达式_lambo表达式

lambo表达式

一:官方定义

 Lambda 表达式 − Lambda允许把函数作为一个方法的参数(函数)作为参数传递进方法中。

该表达式的目的是:优化我们的代码,使我们的代码更加的简洁。

举例说明:

  1. //使用java7排序
  2. private void sortUsingJava7(List<String> names){
  3. Collections.sort(names, new Comparator<String>() {
  4. @Override
  5. public int compare(String s1, String s2) {
  6. return s1.compareTo(s2);
  7. }
  8. });
  9. }
  10. // 使用 java 8 排序
  11. private void sortUsingJava8(List<String> names){
  12. Collections.sort(names, (s1, s2) -> s1.compareTo(s2));
  13. }

      在7/8中我们看出来实则区别就是 对于Collections.sort(..)方法的调用。在使用 new Comparator<String>() 直接将参数转换成行为方法。

二:分析

1.线上代码:(其中User(id ->String ,name -> String ,age -> int))

  1. public static void main(String[] args) {
  2. List<User> list = new ArrayList<>();
  3. User user1 = new User("1", "u1", 15);
  4. User user2 = new User("2", "u2", 15);
  5. User user3 = new User("2", "u3", 15);
  6. User user4 = new User("4", "u4", 16);
  7. User user5 = new User("5", "u5", 16);
  8. User user6 = new User("6", "u6", 16);
  9. User user7 = new User("7", "u7", 16);
  10. User user8 = new User("8", "u8", 17);
  11. User user9 = new User("9", "u9", 17);
  12. list.add(user1);
  13. list.add(user2);
  14. list.add(user3);
  15. list.add(user4);
  16. list.add(user5);
  17. list.add(user6);
  18. list.add(user7);
  19. list.add(user8);
  20. list.add(user9);
  21. }

2.下面定义一个一个方法:取出年龄大于15的所有的User

  1. /**
  2. * 取出年龄大于15的所有的User
  3. * @param age
  4. * @param userlist
  5. * @return
  6. */
  7. public List&l
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/413911
推荐阅读
相关标签
  

闽ICP备14008679号