zoukankan      html  css  js  c++  java
  • 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去掉,参数 -> 方法体

  • 相关阅读:
    bash 笔记
    lvs: linux virtual server
    学习html第一天
    学习c语言的第14天
    c语言学习的第13天2
    c语言学习的第13天1
    c语言学习的第12天
    c语言学习的第11天 指针
    移动端点击延迟300毫秒----FastClick用法
    H5移动端复制功能实现
  • 原文地址:https://www.cnblogs.com/i-tao/p/12856148.html
Copyright © 2011-2022 走看看