最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java中StringUtils與CollectionUtils和ObjectUtil概念講解

 更新時間:2022年12月27日 11:09:42   作者:十年(Sugar)  
這篇文章主要介紹了Java中StringUtils與CollectionUtils和ObjectUtil概念,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧

一.解析

概念

StringUtils概念

StringUtils 方法的操作對象是 Java.lang.String 類型的對象,是 JDK 提供的 String 類型操作方法的補(bǔ)充,并且是 null 安全的(即如果輸入?yún)?shù) String 為 null 則不會拋出 NullPointerException ,而是做了相應(yīng)處理,例如,如果輸入為 null 則返回也是 null 等,具體可以查看源代碼)。

除了構(gòu)造器,StringUtils 中一共有130多個方法,并且都是 static 的,所以我們可以這樣調(diào)用 StringUtils.xxx()

CollectionUtils概念

CollectionUtils是日常經(jīng)常會用到的一個工具類,在包org.apache.commons.collections中。

目前最常用到的兩個方法是CollectionUtils.isEmpty()以及CollectionUtils.isNotEmpty()。

ObjectUtil概念

ObjectUtils工具類會嘗試優(yōu)雅的處理null輸入,對于空輸入通常不會拋出異常,每個方法都更詳細(xì)的記錄其行為。在標(biāo)準(zhǔn)的應(yīng)用程序中ObjectUtils類不應(yīng)該被實(shí)例化。

二.區(qū)別

1.StringUtils和 CollectionUtils分別用來判斷字符串和集合,ObjectUtil用來判斷對象

2.想要字符串是否為空,先要了解“” 和null的區(qū)別

null 是沒有地址的,可以理解為空指針。當(dāng)對象在構(gòu)造器初始化時,如果沒有被賦予初始值,那么會默認(rèn)賦值為 null。

“”空字符串是一個 String 對象是有地址的,只是內(nèi)容是空。

isEmpty() 和 isBlank() 區(qū)別在于 isEmpty() 多了對于空格的判斷,如果字符串只包含有空格,isEmpty()判定是非空的,而 isBlank() 判斷空格依然是空字符串

StringUtils代碼測試

String s1=null;
String s2="";
System.out.println("s1:"+s1+":"+StringUtils.isEmpty(s1))
System.out.println("s2:"+s2+":"+StringUtils.isEmpty(s2))
System.out.println("s1:"+s1+":"+StringUtils.isBlank(s1))
System.out.println("s2:"+s2+":"+StringUtils.isBlank(s2))

看結(jié)果

3.判斷集合是否為空,也需要了解size==0和null

  • null 是沒有地址的,可以理解為空指針。當(dāng)對象在構(gòu)造器初始化時,如果沒有被賦予初始值,那么會默認(rèn)賦值為 null。
  • size==0表示集合已經(jīng)指向一個地址,但是指向的對象中沒有元素。

看代碼

List<String> list=new ArrayList();
list.add("張三");
list.add("李四");
list.add("王五");
if(CollectionUtils.isNotEmpty(list)){
    System.out.println("有值")
}else{
System.out.println("無值")
}

結(jié)果

4.同樣的,判斷對象是否為空,也分為地址為空和值為空,如果地址為空,ObjectUtil.isEmpty結(jié)果為true,值為空結(jié)果為false

這里需要創(chuàng)建實(shí)體類這個步驟省去了直接上代碼

user user=new User()
user userDto= null;
System.out.println("user:"+Object.isEmpty(user));
System.out.println("userDto:"+Object.isEmpty(userDto));

看結(jié)果

三.總結(jié)

1.StringUtils多用來判讀字符串字段,ObjectUtil多用來判斷對象,CollectionUtils多用來判斷集合

2.看情況而定, 有時我們的對象是空的時候有時這些方法有時會失效, 這是我們需要找尋其他的方法來進(jìn)行非空判斷, 避免"空指針異常"

到此這篇關(guān)于Java中StringUtils與CollectionUtils和ObjectUtil概念講解的文章就介紹到這了,更多相關(guān)Java StringUtils內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • log4j2使用filter過濾日志方式

    log4j2使用filter過濾日志方式

    這篇文章主要介紹了log4j2使用filter過濾日志方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Java基礎(chǔ)之序列化與反序列化詳解

    Java基礎(chǔ)之序列化與反序列化詳解

    這篇文章主要介紹了Java基礎(chǔ)之序列化與反序列化詳解,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-04-04
  • 詳解Spring Boot集成MyBatis(注解方式)

    詳解Spring Boot集成MyBatis(注解方式)

    本篇文章主要介紹了詳解Spring Boot集成MyBatis(注解方式),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • web.xml詳解_動力節(jié)點(diǎn)Java學(xué)院整理

    web.xml詳解_動力節(jié)點(diǎn)Java學(xué)院整理

    這篇文章給大家詳細(xì)介紹了web.xml的相關(guān)知識,需要的朋友可以參考下
    2017-07-07
  • SpringBoot整合Redis時遇到連接問題的解決方法

    SpringBoot整合Redis時遇到連接問題的解決方法

    在使用Spring Boot整合Redis的過程中,經(jīng)常會遇到連接問題,尤其是當(dāng)Redis服務(wù)部署在遠(yuǎn)程服務(wù)器上時,所以本文給大家介紹了SpringBoot整合Redis遇到連接問題的解決方法,需要的朋友可以參考下
    2024-11-11
  • Java二維碼登錄流程實(shí)現(xiàn)代碼(包含短地址生成,含部分代碼)

    Java二維碼登錄流程實(shí)現(xiàn)代碼(包含短地址生成,含部分代碼)

    近年來,二維碼的使用越來越風(fēng)生水起,本篇文章主要介紹了Java二維碼登錄流程實(shí)現(xiàn)代碼,其中包含短地址生成,有興趣的可以了解一下。
    2016-12-12
  • Spring?Boot?快速使用?HikariCP?連接池配置詳解

    Spring?Boot?快速使用?HikariCP?連接池配置詳解

    Spring Boot 2.x 將其作為默認(rèn)的連接池組件,項(xiàng)目中添加 spring-boot-starter-jdbc 或 spring-boot-starter-data-jpa 模塊后,HikariCP 依賴會被自動引入,這篇文章主要介紹了Spring?Boot使用HikariCP連接池配置詳解,需要的朋友可以參考下
    2023-06-06
  • SpringBoot接收J(rèn)SON類型的參數(shù)方式

    SpringBoot接收J(rèn)SON類型的參數(shù)方式

    這篇文章主要介紹了SpringBoot接收J(rèn)SON類型的參數(shù)方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • SpringBoot應(yīng)用的打包和發(fā)布實(shí)現(xiàn)

    SpringBoot應(yīng)用的打包和發(fā)布實(shí)現(xiàn)

    本文主要介紹了SpringBoot應(yīng)用的打包和發(fā)布實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • springmvc中下載中文文件名稱為下劃線的解決方案

    springmvc中下載中文文件名稱為下劃線的解決方案

    這篇文章主要介紹了springmvc中下載中文文件名稱為下劃線的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01

最新評論

汕头市| 民勤县| 长丰县| 寿光市| 大石桥市| 揭东县| 建德市| 增城市| 个旧市| 济南市| 上思县| 阿拉善右旗| 定陶县| 营山县| 玉溪市| 富阳市| 德清县| 肥乡县| 天长市| 太湖县| 五寨县| 克拉玛依市| 新龙县| 泉州市| 旅游| 雅江县| 定襄县| 枣阳市| 万载县| 宁夏| 吴堡县| 额济纳旗| 海晏县| 县级市| 永昌县| 林甸县| 新泰市| 清远市| 大同县| 中方县| 巫溪县|