java之Objects.nonNull用法代碼解讀
java之Objects.nonNull用法代碼
Objects.nonNull
是 Java 標(biāo)準(zhǔn)庫中的一個(gè)靜態(tài)方法,位于 java.util.Objects
類中。
這個(gè)方法用于檢查給定的對(duì)象引用是否為非空(即不為 null
)。
- 其基本用法如下:
public static boolean nonNull(Object obj) { return obj != null; }
- 使用示例:
import java.util.Objects; public class Example { public void someMethod(String input) { if (Objects.nonNull(input)) { // 當(dāng)輸入不為 null 時(shí)執(zhí)行的操作 System.out.println("Input is not null, its value: " + input); } else { throw new IllegalArgumentException("Input cannot be null"); } } } // 使用: Example example = new Example(); String someString = "Hello"; example.someMethod(someString); // 如果 someString 不是 null,則會(huì)打印信息 // 或者在流操作中作為謂詞使用 List<String> list = ...; // 假設(shè)是一個(gè)字符串列表 list.stream() .filter(Objects::nonNull) .forEach(System.out::println); // 這將只打印列表中非 null 的元素
注意:
Objects.nonNull()
方法不會(huì)拋出異常,它只是簡(jiǎn)單地返回一個(gè)布爾值表示對(duì)象是否非空。- 若你需要在對(duì)象為 null 時(shí)拋出異常,應(yīng)使用
Objects.requireNonNull()
方法,該方法會(huì)在傳入對(duì)象為 null 時(shí)拋出NullPointerException
。
Objects.nonNull() 與 Objects.isNull()
- 對(duì)比:
傳統(tǒng)寫法 | Objects 方法 | 適用場(chǎng)景 |
---|---|---|
if (user != null) | if (Objects.nonNull(user)) | 正向操作 (對(duì)象存在時(shí)才執(zhí)行邏輯) |
if (user == null) | if (Objects.isNull(user)) | 反向操作 (對(duì)象為空時(shí)提供備用邏輯) |
- 在Stream流中使用例子:
List<String> names = userList.stream() .filter(Objects::nonNull) // 過濾 null 用戶對(duì)象 .map(User::getName) .collect(Collectors.toList());
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
如何把spring boot應(yīng)用發(fā)布到Harbor
這篇文章主要介紹了如何把spring boot應(yīng)用發(fā)布到Harbor,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11解決HttpServletRequest 流數(shù)據(jù)不可重復(fù)讀的操作
這篇文章主要介紹了解決HttpServletRequest 流數(shù)據(jù)不可重復(fù)讀的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08

Java中語音url轉(zhuǎn)換成InputStream的示例代碼

SpringBoot Controller返回圖片的三種方式

Spring思維導(dǎo)圖助你輕松學(xué)習(xí)Spring

十分鐘速懂java知識(shí)點(diǎn) System類

SSH框架實(shí)現(xiàn)表單上傳圖片實(shí)例代碼