【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.pswp.cn/news/714603.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/714603.shtml
英文地址,請注明出處:http://en.pswp.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;要求你統計一下它們中有多少個不…