zoukankan      html  css  js  c++  java
  • java中的Lamdba表达式和Stream

    基于JDK 1.8 

    1、循环:

    // 以前的循环方式  
    for (String player : players) {  
         System.out.print(player + "; ");  
    }  
      
    // 使用 lambda 表达式以及函数操作(functional operation)  
    players.forEach((player) -> System.out.print(player + "; "));  
       
    // 在 Java 8 中使用双冒号操作符(double colon operator)  
    players.forEach(System.out::println);  

    2、匿名内部类:

    // 使用匿名内部类
    btn.setOnAction(new EventHandler<ActionEvent>() {
    @Override
    public void handle(ActionEvent event) {
    System.out.println("Hello World!");
    }
    });

    // 或者使用 lambda expression
    btn.setOnAction(event -> System.out.println("Hello World!"));

    3、比较函数排序:

    //  使用 lambda expression 排序

    Comparator<String> sortByName = (String s1, String s2) -> (s1.compareTo(s2));

    Arrays.sort(players, sortByName);

    //  也可以采用如下形式:

    Arrays.sort(players, (String s1, String s2) -> (s1.compareTo(s2)));

     4、结合Stream:

    //Lists是Guava中的一个工具类
    List<Integer> nums = Lists.newArrayList(1,null,3,4,null,6);
    nums.stream().filter(num -> num != null).count();

  • 相关阅读:
    偏倚有感
    SAS--修改默认语言
    SAS--EXCEL读写、批量读EXCEL
    SAS--sql2
    Day2----respondToValue
    python的一些遗漏用法
    一些常见的东西
    爬虫学习06用selenium爬取空间
    爬虫学习04.
    爬虫学习03常用模块
  • 原文地址:https://www.cnblogs.com/liangblog/p/10330447.html
Copyright © 2011-2022 走看看