博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java8中函数式接口
阅读量:3965 次
发布时间:2019-05-24

本文共 1521 字,大约阅读时间需要 5 分钟。

1.函数式接口的使用说明:

只包含一个抽象方法的接口,称为函数式接口

在这里插入图片描述

2.java8中关于Lambda表达式提供的4个基本的函数式接口:

在这里插入图片描述

  • 消费型接口 Consumer void accept(T t)
  • 供给型接口 Supplier T get()
  • 函数型接口 Function<T,R> R apply(T t)
  • 断定型接口 Predicate boolean test(T t)
    具体使用:
    //消费型接口 Consumer void accept(T t)
@Testpublic void test1(){
happyTime(100, new Consumer
() {
@Override public void accept(Double money) {
System.out.println("看电影消费了" + money + "元"); } }); System.out.println("****************"); happyTime(200,money -> System.out.println("吃火锅消费了" + money + "元"));}public void happyTime(double money, Consumer
con){
con.accept(money);}

// 断定型接口 Predicate boolean test(T t)

@Testpublic void test2(){
List
list = Arrays.asList("北京","南京","天津","东京","西京","普京"); List
filterStrs = filterString(list, new Predicate
() {
@Override public boolean test(String s) {
return s.contains("京"); } }); System.out.println(filterStrs); System.out.println("************"); List
filterStrs1 = filterString(list, s -> s.contains("京")); System.out.println(filterStrs1);}

//根据给定的规则,过滤集合中的字符串。此规则由Predicate的方法决定

public List
filterString(List
list, Predicate
pre) {
ArrayList
fileString = new ArrayList<>(); for(String s : list){
if(pre.test(s)){
fileString.add(s); } } return fileString;}

3.总结:

在这里插入图片描述

在这里插入图片描述

转载地址:http://btuki.baihongyu.com/

你可能感兴趣的文章
SQL - SQL Server查询近7天的连续日期
查看>>
SQL - SQL Server中如何取年、月、日 -DATEPART函数
查看>>
SQL - SQL Server 一列或多列重复数据的查询,删除
查看>>
NET - .NET Core WebAPI + Vue + Axios 导出Excel / CSV
查看>>
NET - NET Core Quartz.net开源作业调度框架使用详解
查看>>
NET - NET Core quartz.net 时间表达式----- Cron表达式详解
查看>>
NET - .NET Core 之 Abp Audit-Logging
查看>>
NET - .NET Core 之 Abp AuditLog 将不同的Controller实体的审计日志存储到不同的Table
查看>>
NET - .NET Core 之 Azure Key Vault 密钥保管库的使用
查看>>
NET - .NET Core 之 Abp 整合 Quartz
查看>>
Docker - Docker Desktop(WSL2)修改镜像存储位置
查看>>
NET - NET Core使用Log4net的SqlServer AdoNetAppender 报程序集错误
查看>>
NET - NET Core中使用Log4net输出日志到数据库中去
查看>>
NET - NET Core 迁移nuget包缓存到指定位置
查看>>
Spring - SpringBoot 集成 swagger2
查看>>
SQL - 深入理解MySQL索引之B+Tree
查看>>
SQL - 数据库索引原理,及MySQL索引类型
查看>>
Spring - Dubbo的实现原理
查看>>
Spring - Dubbo 扩展点详解
查看>>
Spring - Hystrix原理与实战
查看>>