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();

  • 相关阅读:
    黄金作为货币的本质
    万有引力和做功。
    Arp攻击实战
    Android SDK下载项的说明
    宇宙、事象
    事件视界
    微积分
    金融的三大基础货币,股票,期货。
    pos机的热敏纸尺寸
    去除text历史记录
  • 原文地址:https://www.cnblogs.com/liangblog/p/10330447.html
Copyright © 2011-2022 走看看