【Java】四大函数式接口

消费型接口Consumer

  • 消费型接口
  • 接收一个输入,没有返回值

在stream流计算中 forEach() 接收一个消费型接口Consumer用于 遍历元素

/*** 消费型接口* 接收一个输入,没有返回值*/
public class demo01 {public static void main(String[] args) {//TODO 消费型接口,接收一个输入,没有返回值Consumer<String> consumer = new Consumer<String>() {@Overridepublic void accept(String str) {System.out.println(str);}};consumer.accept("dsada");//TODO 在流计算中 forEach() 接收一个消费型接口Consumer用于 遍历元素ArrayList<String> list = new ArrayList<>();list.stream().forEach(consumer);//lambda表达式Consumer<String> consumer1 = (str)->{System.out.println(str+"====");};consumer1.accept("dsadsa");}
}

函数形接口Function

  • 函数形接口
  • 接收一个类型的参数,返回一个类型的参数

在stream流计算的 map()方法中,map() 方法接收一个 Function 接口用于类型映射

/*** 函数形接口* 接收一个类型的参数,返回一个类型的参数*/
public class demo01 {public static void main(String[] args) {// 匿名内部类,// Function接口//TODO 两个泛型 接收一个类型的参数,返回一个类型的参数Function<String, String> function = new Function<String, String>() {@Overridepublic String apply(String str) {return str;}};//TODO 在流计算的 map()方法中,map() 方法接收一个 Function 接口用于类型映射ArrayList<String> list = new ArrayList<>();list.stream().map(function);System.out.println(function.apply("dsad"));//lambda表达式Function<String, String> function2 = (str)->{ return str;};System.out.println(function2.apply("dsad"));}
}

断定型接口Predicate

  • 断定型接口
  • 接收一个输入参数,返回一个布尔值

在stream流计算中 filter() 接收一个断定型接口Predicate用于过滤元素

/*** 断定型接口* 接收一个输入参数,返回一个布尔值*/
public class demo01 {public static void main(String[] args) {// TODO 断定型接口  接收一个输入参数,返回一个布尔值Predicate<String> StringPredicate = new Predicate<String>() {@Overridepublic boolean test(String str) {return str.isEmpty();}};//TODO 在流计算中 filter() 接收一个断定型接口Predicate用于过滤元素ArrayList<String> list = new ArrayList<>();list.stream().filter(StringPredicate);System.out.println(StringPredicate.test(""));}
}

供给型接口Supplier

  • 供给型接口
  • 没有参数,只有返回值
/*** 供给型接口*  没有参数,只有返回值*/
public class demo01 {public static void main(String[] args) {//TODO 没有参数,只有返回值Supplier<String> supplier = new Supplier<String>() {@Overridepublic String get() {return "1024";}};System.out.println(supplier.get());//lambda表达式Supplier<String> supplier1 = () -> "1024";System.out.println(supplier1.get());}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/714603.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL】表的内连和外连(重点)

表的连接分为内连和外连。 一、内连接 内连接实际上就是利用 where 子句对两种表形成的笛卡儿积进行筛选&#xff0c;前面学习的查询都是内连接&#xff0c;也是在开发过程中使用的最多的连接查询。 select 字段 from 表1 inner join 表2 on 连接条件 and 其他条件; 注意&…

【数仓】Hadoop集群配置常用参数说明

Hadoop集群中&#xff0c;需要配置的文件主要包括四个 配置核心Hadoop参数&#xff1a; 编辑core-site.xml文件&#xff0c;设置Hadoop集群的基本参数&#xff0c;如文件系统、Hadoop临时目录等。 配置HDFS参数&#xff1a; 编辑hdfs-site.xml文件&#xff0c;设置HDFS的相关参…

策略开发:EMA如何计算

EMA的计算原理 EMA 是MA&#xff08;平滑移动平均线&#xff09;的另一种形式。全名“加权指数移动平均线”。 2/13就是12日移动平均线的平滑因子&#xff0c;他的意思是指&#xff1a;给予新价格 2/13的权重&#xff0c;给予过去的EMA 11/13的权重。 在计算的时候第一天的M…

Linux使用基础命令

1.常用系统工作命令 (1).用echo命令查看SHELL变量的值 qiangziqiangzi-virtual-machine:~$ echo $SHELL /bin/bash(2).查看本机主机名 qiangziqiangzi-virtual-machine:~$ echo $HOSTNAME qiangzi-virtual-machine (3).date命令用于显示/设置系统的时间或日期 qiangziqian…

Linux多线程服务端编程:使用muduo C++网络库 学习笔记 附录B 从《C++ Primer(第4版)》入手学习C++

这是作者为《C Primer&#xff08;第4版&#xff09;&#xff08;评注版&#xff09;》写的序言&#xff0c;文中“本书”指的是这本书评注版。 B.1 为什么要学习C 2009年本书作者Stanley Lippman先生应邀来华参加上海祝成科技举办的C技术大会&#xff0c;他表示人们现在还用…

MySQL存储过程和Function

一、存储过程 MySQL中提供存储过程和存储函数机制&#xff0c;将其统称为存储程序。 SQL语句要先编译&#xff0c;然后执行&#xff0c;存储程序是一组为了完成特定功能的SQL语句&#xff0c;编译后存到数据库中。 用户通过指定存储程序的名字并给定参数来调用才会执行。 存…

扩展学习|大数据分析的现状和分类

文献来源&#xff1a;[1] Mohamed A , Najafabadi M K , Wah Y B ,et al.The state of the art and taxonomy of big data analytics: view from new big data framework[J].Artificial Intelligence Review: An International Science and Engineering Journal, 2020(2):53. 下…

蓝桥杯(3.2)

1209. 带分数 import java.io.*;public class Main {static BufferedReader br new BufferedReader(new InputStreamReader(System.in));static PrintWriter pw new PrintWriter(new OutputStreamWriter(System.out));static final int N 10;static int n, cnt;static int[…

LabVIEW流量控制系统

LabVIEW流量控制系统 为响应水下航行体操纵舵翼环量控制技术的试验研究需求&#xff0c;通过LabVIEW开发了一套小量程流量控制系统。该系统能够满足特定流量控制范围及精度要求&#xff0c;展现了其在实验研究中的经济性、可靠性和实用性&#xff0c;具有良好的推广价值。 项…

tritonserver学习之八:redis_caches实践

tritonserver学习之一&#xff1a;triton使用流程 tritonserver学习之二&#xff1a;tritonserver编译 tritonserver学习之三&#xff1a;tritonserver运行流程 tritonserver学习之四&#xff1a;命令行解析 tritonserver学习之五&#xff1a;backend实现机制 tritonserv…

【C++初阶】内存管理

目录 一.C语言中的动态内存管理方式 二.C中的内存管理方式 1.new/delete操作内置类型 2.new和delete操作自定义类型 3.浅识抛异常 &#xff08;内存申请失败&#xff09; 4.new和delete操作自定义类型 三.new和delete的实现原理 1.内置类型 2.自定义类型 一.C语…

C++学习笔记:二叉搜索树

二叉搜索树 什么是二叉搜索树?搜索二叉树的操作查找插入删除 二叉搜索树的应用二叉搜索树的代码实现K模型:KV模型 二叉搜索树的性能怎么样? 什么是二叉搜索树? 二叉搜索树又称二叉排序树&#xff0c;它或者是一棵空树&#xff0c;或者是具有以下性质的二叉树: 若它的左子树…

Linux安装Nginx详细步骤

1、创建两台虚拟机&#xff0c;分别为主机和从机&#xff0c;区别两台虚拟机的IP地址 2、将Nginx素材内容上传到/usr/local目录&#xff08;pcre,zlib,openssl,nginx&#xff09; 附件 3、安装pcre库   3.1 cd到/usr/local目录 3.2 tar -zxvf pcre-8.36.tar.gz 解压 3.3 cd…

MATLAB图像噪声添加与滤波

在 MATLAB 中添加图像噪声和进行滤波通常使用以下函数&#xff1a; 添加噪声&#xff1a;可以使用imnoise函数向图像添加各种类型的噪声&#xff0c;如高斯噪声、椒盐噪声等。 滤波&#xff1a;可以使用各种滤波器对图像进行滤波处理&#xff0c;例如中值滤波、高斯滤波等。 …

前端学习、HTML

html是由一些标签构成的&#xff0c;标签之间可以嵌套&#xff0c;每个标签都有开始标签和结束标签&#xff0c;也有部分标签只有开始标签&#xff0c;没有结束标签。html的标签也可以成为元素。&#xff08;树形结构&#xff09; html文件的最顶层标签就是html。 head用来放…

**蓝桥OJ 178全球变暖 DFS

蓝桥OJ 178全球变暖 思路: 将每一座岛屿用一个颜色scc代替, 用dx[]和dy[]判断他的上下左右是否需要标记颜色,如果已经标记过颜色或者是海洋就跳过.后面的淹没,实际上就是哪个块上下左右有陆地,那么就不会被淹没,我用一个tag标记,如果上下左右一旦有海洋,tag就变为false.如果tag…

用冒泡排序模拟C语言中的内置快排函数qsort!

目录 ​编辑 1.回调函数的介绍 2. 回调函数实现转移表 3. 冒泡排序的实现 4. qsort的介绍和使用 5. qsort的模拟实现 6. 完结散花 悟已往之不谏&#xff0c;知来者犹可追 创作不易&#xff0c;宝子们&#xff01;如果这篇文章对你们有帮助的话&#xff0c;别忘了给个免…

机器学习:模型评估和模型保存

一、模型评估 from sklearn.metrics import accuracy_score, confusion_matrix, classification_report# 使用测试集进行预测 y_pred model.predict(X_test)# 计算准确率 accuracy accuracy_score(y_test, y_pred) print(f"Accuracy: {accuracy*100:.2f}%")# 打印…

整数和浮点数在内存中的存储(大小端字节序,浮点数的存取)

目录 1.整数在内存中的存储 2.大小端字节序和字节序判断 2.1什么是大小端&#xff1f; 2.2为什么会有大小端 3.浮点数在内存中的存储 3.1浮点数的存储 3.1.1 浮点数存的过程 3.1.2 浮点数取的过程 3.2 解析 3.3 验证浮点数的存储方式 1.整数在内存中的存储 整数的二进…

PAT (Basic Level) Practice | 朋友数

如果两个整数各位数字的和是一样的&#xff0c;则被称为是“朋友数”&#xff0c;而那个公共的和就是它们的“朋友证号”。例如 123 和 51 就是朋友数&#xff0c;因为 123 51 6&#xff0c;而 6 就是它们的朋友证号。给定一些整数&#xff0c;要求你统计一下它们中有多少个不…