• Java 8 Lambda 表达式


    1.简介

      Lambda表达式是Java8新特性,Lambda允许把函数作为一个方法的参数传递进方法中,这样在创建匿名内部类时候更方便。同时Lambda是一种函数式编程扩展了以前Java面向对象的命令式编程方式,拓展了编程方法,以后写代码更灵活了。

    2.语法

      (parameters) -> expression(parameters) ->{ statements; }

    3.例子

    // 1. 不需要参数,返回值为 5  
    () -> 5  
      
    // 2. 接收一个参数(数字类型),返回其2倍的值  
    x -> 2 * x  
      
    // 3. 接受2个参数(数字),并返回他们的差值  
    (x, y) -> x – y  
      
    // 4. 接收2个int型整数,返回他们的和  
    (int x, int y) -> x + y  
      
    // 5. 接受一个 string 对象,并在控制台打印,不返回任何值(看起来像是返回void)  
    (String s) -> System.out.print(s)
    

      Java遍历集合

    public static void main(String[] args){
        List<Integer> list = new ArrayList<Integer>();
        list.add(1);
        list.add(2);
        list.add(3);
        list.add(4);
        list.add(5);
        //传统集合遍历
        for(int i = 0;i < list.size();i++){
            System.out.println(list.get(i));
        }
        for(int e : list){
            System.out.println(e);
        }
        //Java 8 Lambda
        list.forEach(System.out::println);
        list.forEach(e -> System.out.println(e));
        list.forEach(e -> {
            int key = e;
            System.out.println(key);
        });
    }

      JS遍历集合

    arr[].forEach(function(value,index,array){
      console.log(value);
    })

      对比Java 8 Lambda和JS遍历集合,Java 8 Lambda 更简洁,类似在JS中把function去掉,参数 -> 方法体

  • 相关阅读:
    Laravel 服务容器、服务提供器、契约实例讲解
    通过event记录sql
    laravel log改为时间格式
    array_column函数
    linux 安装ssh以及ssh用法与免密登录
    scp复制文件到远程服务器上
    nginx配置ssl证书后无法访问https
    Mac 在terminal 上用命令打开sublime
    Mac上通过iterm 上传文件到服务器
    基于visual Studio2013解决算法导论之044最短路径
  • 原文地址:https://www.cnblogs.com/i-tao/p/12856148.html
Copyright © 2020-2023  润新知