解決lambda表達式內(nèi)出現(xiàn)異常無法throw拋出的問題
lambda表達式內(nèi)出現(xiàn)異常無法throw拋出
問題描述
今兒在使用lambda表達式時,lambda表達式內(nèi)出現(xiàn)了異常,準備直接拋出,沒想到卻還是報錯:

由于博主lambda表達式用的比較少,剛看到這問題時,可以說是一臉懵逼。畢竟兩邊的提示可以說是前后矛盾啊。
刷新幾下編譯器還是報錯,就只能老老實實的找原因。
問題原因
所幸Java是一門比較成熟的語言,前輩們已經(jīng)踩了足夠的坑.
之所以有這種現(xiàn)象是因為lambda表達式本身沒有處理異常的機制 ,以至于遇到受檢異常時,無法通過主動拋出來解決.
但具體的也不是很清楚了,若有其他道友遇到這種問題,歡迎討論.
解決方案
將受檢異常包裝成非受檢異常,即RuntimeException
效果如下:

雖然效果還是不甚理想,就當漲了一波lambda表達式的熟練度吧。
lambda表達式中無法拋出受檢異常
拋出受檢異常的時候,我們的接口應(yīng)該帶上throw關(guān)鍵字,但通過lambda表達式實現(xiàn)的Consumer的accept方法并不帶有關(guān)鍵字,因此在lambda表達式中不能拋出受檢異常必須把它吃掉


以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Spring boot集成swagger2生成接口文檔的全過程
這篇文章主要給大家介紹了關(guān)于Spring boot集成swagger2生成接口文檔的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用Spring boot具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
Java微服務(wù)Nacos Config配置中心超詳細講解
配置文件相對分散。在一個微服務(wù)架構(gòu)下,配置文件會隨著微服務(wù)的增多變的越來越多,而且分散 在各個微服務(wù)中,不好統(tǒng)一配置和管理。每一個環(huán)境所使用的配置理論上都是不同的,一旦需要修改,就需要我們?nèi)ジ鱾€微服務(wù)下手動維護2023-02-02
淺談JAVA字符串匹配算法indexOf函數(shù)的實現(xiàn)方法
這篇文章主要介紹了淺談字符串匹配算法indexOf函數(shù)的實現(xiàn)方法,indexOf函數(shù)我們可以查找一個字符串(模式串)是否在另一個字符串(主串)出現(xiàn)過。對此感興趣的可以來了解一下2020-07-07
使用Java反射模擬實現(xiàn)Spring的IoC容器的操作
這篇文章主要介紹了使用Java反射模擬實現(xiàn)Spring的IoC容器的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08
Spring Batch讀取txt文件并寫入數(shù)據(jù)庫的方法教程
這篇文章主要給大家介紹了Spring Batch讀取txt文件并寫入數(shù)據(jù)庫的方法,SpringBatch 是一個輕量級、全面的批處理框架。這里我們用它來實現(xiàn)文件的讀取并將讀取的結(jié)果作處理,處理之后再寫入數(shù)據(jù)庫中的功能。需要的朋友可以參考借鑒,下面來一起看看吧。2017-04-04
spring cloud gateway中redis一直打印重連日志問題及解決
這篇文章主要介紹了spring cloud gateway中redis一直打印重連日志問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05
Java數(shù)據(jù)結(jié)構(gòu)之紅黑樹的真正理解
這篇文章主要為大家詳細介紹了Java數(shù)據(jù)結(jié)構(gòu)之紅黑樹的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-11-11
基于idea操作hbase數(shù)據(jù)庫并映射到hive表
這篇文章主要介紹了用idea操作hbase數(shù)據(jù)庫,并映射到hive,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03

