Lambda基本使用方法(二)——再看不懂我找不到女朋友

简介: Lambda基本使用方法(二)——再看不懂我找不到女朋友

Lambda基本使用方法

举一些简单例子:

无参,有返回值
()->1
有参,有返回值
x->x+1
两个参数,有返回值
(a,b)->a+b
有参,无返回值
(s)->System.out.println(s)

由上节可知道,当我们使用Lambda表达式时一般要实现抽象接口的抽象方法,那么这就需要我们当要使用Lambda时就要创建一个接口,这就会很麻烦,所以Java为我们提供了一些接口模板

  • Consumer:消费型:无参,无返回值,只需要实现一些方法
  • Supplier:供给型:无参,有返回值,一般是返回对象
  • Function:函数型:有一个参数,有返回值,一般是对数据进行处理
  • Predicate:断言型:有参,返回值为Boolean,一般是为了筛选使用
Consumer con=(i)->System.out.println("35345"+i);
con.accept(34);
Supplier<Integer> sup=()->2;
System.out.println(sup.get());
Function<Integer,Integer> fun=(i)->i+2;
System.out.println(fun.apply(3));
Predicate<Integer> pre=(i)->i%2==0;
System.out.println(pre.test(4));

这四大核心内置函数式接口,可以为我们提供很大方便,但我们再去使用Lambda表达式时,就不需要去创建接口了,只需要按照自己需求选用合适的函数式接口即可。

举个例子,再去熟悉一下Lambda的使用环境

@Test
public void te(){
        BiFunction<Integer,Integer,Integer> bi=(x,y)->(x+y);
        fn(1,2,bi);
    }
public void fn(int x,int y,BiFunction<Integer,Integer,Integer> bi){
        int result=bi.apply(x,y);
        System.out.println(result);
    }


目录
相关文章
|
8月前
|
Python
请解释Python中的递归是什么?并举例说明其用法。
【2月更文挑战第25天】【2月更文挑战第85篇】请解释Python中的递归是什么?并举例说明其用法。
45 0
|
8月前
|
程序员 编译器 C++
【实用编程技巧】不想改bug?初学者必须学会使用的报错函数assert!(断言函数详解)
【实用编程技巧】不想改bug?初学者必须学会使用的报错函数assert!(断言函数详解)
68 2
|
8月前
|
存储 IDE 开发工具
【python原理】Python 3里面print为什么改成函数?为什么会有个奇怪的“...”对象?为什么推荐蛇形命名法?等常见问题
【python原理】Python 3里面print为什么改成函数?为什么会有个奇怪的“...”对象?为什么推荐蛇形命名法?等常见问题
92 0
|
3月前
|
API Python
通过 contextlib 模块详细复习一下 with 语句的用法
通过 contextlib 模块详细复习一下 with 语句的用法
54 1
|
4月前
|
存储 Go C语言
Python 的整数是怎么实现的?这篇文章告诉你答案
Python 的整数是怎么实现的?这篇文章告诉你答案
72 7
|
8月前
|
Python
请解释Python中的lambda函数是什么?并举例说明其用法。
请解释Python中的lambda函数是什么?并举例说明其用法。
63 2
|
8月前
|
存储 C++
【C++】function包装器全解(代码演示,例题演示)
【C++】function包装器全解(代码演示,例题演示)
|
8月前
|
安全 IDE Java
【python刷题】leecode官方提示“->“,“:“这些符号是什么意思?什么是Type Hints?
【python刷题】leecode官方提示“->“,“:“这些符号是什么意思?什么是Type Hints?
120 0
|
程序员
学C的第九天(深入学习函数:库函数、自定义函数、函数的参数、函数调用、练习、补充知识点)-2
5.5:练习(部分上一期做过,换成函数做法): (1).写一个函数可以判断一个数是不是素数:
|
Java 编译器
「 Java基础-Lambda 」试试Lambda表达式?通俗易懂得嘞!
本文从Lambda表达式的基础概念、函数式接口、以及Lambda表达式的常用示例几方面完整的讨论了这一Java8新增的特性,实际开发中确实为我们提供了许多便利,简化了代码。欢迎小伙伴继续提出不同的见解一起讨论!
「 Java基础-Lambda 」试试Lambda表达式?通俗易懂得嘞!