zoukankan      html  css  js  c++  java
  • Lambda表达式

    1.概述

            Lambda表达式是jdk1.8的新特性之一,他可以极大程度简化代码,减少代码量,常用于java中接口式匿名内部类。Lambda允许把函数作为一个方法的参数(函数作为参数传递到方法中),或者把代码看成数据。

    2.定义

            只有一个方法的匿名内部函数是函数式接口,它可以被隐式转换成Lambda表达式。

            只有一个抽象方法(Object类中方法除外)的接口式函数式接口。

    3.实质

            其实质就是匿名内部类(只有一个方法接口的匿名函数)。即满足函数式接口的接口。

            函数式接口的注解为:@FunctionalInterface(标注在类名上一行),当此接口不是函数式接口式,会报错。

    4.常用的函数式接口

            Supplier接口:代表一个输出。

            Consumer接口:代表一个输入

            BiConsumer接口:代表二个输入

            Function接口:代表一个输入,一个输出。(一般输入输出类型不同)

            Function<Integer, Integer> function = x -> {
                int count = 0;
                for (int i = 0; i < x; i++) {
                    count += i;
                }
                return count;
            };
            System.out.println(function.apply(10));

            BiFunction接口:代表二个输入,一个输出。(一般输入输出类型不同)

    5.使用:() -> {}

  • 相关阅读:
    使用匿名内部类的创建形式完成线程的2种方式
    线程的2种创建方式
    深入学习 viewport 和 px
    <script> 标签位置应该放在哪里?
    JavaScript 创建对象的几种方式?
    Palindrome Number
    String To Integer
    Reverse Integer
    Zigzag Conversion
    Longest Palindromic Substring
  • 原文地址:https://www.cnblogs.com/IdealSpring/p/11871212.html
Copyright © 2011-2022 走看看