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

Java中常用判空與判等方法詳解

 更新時間:2025年03月04日 08:56:55   作者:會說法語的豬  
java中感覺判空的一些方法太多了,感覺有點兒亂糟糟的,所以這篇文中就為大家簡單總結(jié)一下在項目中常用的一些方法吧,希望對大家有所幫助

java中感覺判空的一些方法太多了,感覺有點兒亂糟糟的,所以這篇就簡單總結(jié)一下我在項目中常用的一些方法吧,并不全哈,只是自己常用的,平時也夠用 

1. 判空

1.1 判斷字符串是否為空

下面是判斷字符串是否為空常用的我常用的四種方式:

package com.wft.test;
 
 
import org.apache.commons.lang3.StringUtils;
 
public class EmptyTest {
    public static void main(String[] args) {
        // 1. 判斷字符串是否為空
        String str = null;
        // 方式1 
        if(StringUtils.isEmpty(str)) { // StringUtils.isNotEmpty  判斷不為空
            System.out.println("為空1");
        }
        // 方式2
        if(str == null || str.isEmpty()) {
            System.out.println("為空2");
        }
        // 方式3
        if(str == null || "".equals(str)) {  // 直接使用str.equals("")如果str是null會導(dǎo)致NullPointerException
            System.out.println("為空3");
        }
        // 方式4
        if(str == null || str.length() == 0) {
            System.out.println("為空4");
        }
    }
}

1.2 判斷List集合是否為空

package com.wft.test;
 
 
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
 
public class EmptyTest {
    public static void main(String[] args) {
        List<Object> list = new ArrayList<>();
        // 方式1:
        if(Objects.isNull(list) || list.isEmpty()) {
            System.out.println("為空1");
        }
        // 方式2:
        if(Objects.isNull(list) || list.size() == 0) {
            System.out.println("為空2");
        }
    }
}

1.3 判斷Map集合是否為空

package com.wft.test;
 
 
import java.util.HashMap;
import java.util.Map;
 
public class EmptyTest {
    public static void main(String[] args) {
        Map map = new HashMap();
        if(map == null || map.isEmpty()) {
            System.out.println("為空");
        }
    }
}

2. 判等

1.雙等于(==)

先說下雙等于,其實開發(fā)中比較少用==。==操作符用于比較兩個變量的值是否相等。不過,它的行為取決于被比較的變量類型

2.基本數(shù)據(jù)類型

當(dāng)==用于比較如int, float, charr等基本數(shù)據(jù)類型的變量時,它比較的是這些變量的實際值。例如,int a = 5; int b = 5;  則 a == b 返回 true,因為它們的值都是5

3.引用類型

當(dāng)==用于比較引用類型(如類、接口、數(shù)組等)時,它比較的是兩個引用是否指向內(nèi)存中的同一個對象地址,而不是比較對象的內(nèi)容或值。例如,如果你有兩個分別創(chuàng)建的String對象,即使它們包含相同的字符序列,使用==比較它們也會返回false,除非這兩個引用實際上指向的是同一個對象實例。

如果你想要比較兩個對象的內(nèi)容是否相等,應(yīng)該使用.equals()方法。比如,對于String類,"hello".equals("hello") 將返回 true,因為它比較的是字符串的內(nèi)容而非它們的內(nèi)存地址。

2.1 判斷兩個字符串是否相等

package com.wft.test;
 
import java.util.Objects;
 
public class empty {
    public static void main(String[] args) {
        String str1 = "wft";
        String str2 = "wft";
        /**
         * 方式1
         * 注意:如果其中一個字符串可能為 null,直接調(diào)用 equals() 可能會導(dǎo)致 NullPointerException。為了避免這種情況,將 equals() 調(diào)用放在非 null 的對象上。或者采用方式2
         */
        if(str1.equals(str2)) {
            System.out.println("相等");
        }
        /**
         * 方式2
         */
        if(Objects.equals(str1, str2)) {
            System.out.println("相等");
        }
    }
}

2.2 判斷兩個List集合是否相等

package com.wft.test;
 
 
import java.util.Arrays;
import java.util.List;
 
public class EmptyTest {
    public static void main(String[] args) {
        List<String> list1 = Arrays.asList("a", "b", "c");
        List<String> list2 = Arrays.asList("a", "b", "c");
 
        if(list1.equals(list2)) {  // 注意空指針的情況
            System.out.println("相等");
        }
    }
}

2.3 判斷兩個List集合是否相等

package com.wft.test;
 
import java.util.HashMap;
import java.util.Map;
 
public class EmptyTest {
    public static void main(String[] args) {
        Map<String, String> map1 = new HashMap<>();
        map1.put("key1", "value1");
        map1.put("key2", "value2");
 
        Map<String, String> map2 = new HashMap<>();
        map2.put("key2", "value2");
        map2.put("key1", "value1");
 
        if(map1.equals(map2)) {
            System.out.println("相等");
        }
    }
}

到此這篇關(guān)于Java中常用判空與判等方法詳解的文章就介紹到這了,更多相關(guān)Java判空與判等內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java數(shù)據(jù)類型轉(zhuǎn)換之自動類型轉(zhuǎn)換和強(qiáng)制類型轉(zhuǎn)換詳解

    java數(shù)據(jù)類型轉(zhuǎn)換之自動類型轉(zhuǎn)換和強(qiáng)制類型轉(zhuǎn)換詳解

    在 Java 中,數(shù)據(jù)類型轉(zhuǎn)換用于將一種基本數(shù)據(jù)類型的值轉(zhuǎn)換為另一種基本數(shù)據(jù)類型,主要分為自動類型轉(zhuǎn)換(隱式轉(zhuǎn)換)?和強(qiáng)制類型轉(zhuǎn)換(顯式轉(zhuǎn)換)?兩種,下面小編就為大家簡單介紹一下吧
    2025-11-11
  • Springboot引用外部配置文件的方法步驟

    Springboot引用外部配置文件的方法步驟

    這篇文章主要介紹了Springboot引用外部配置文件的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • mybatis的mapper.xml中resultMap標(biāo)簽的使用詳解

    mybatis的mapper.xml中resultMap標(biāo)簽的使用詳解

    這篇文章主要介紹了mybatis的mapper.xml中resultMap標(biāo)簽的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • springboot+vue項目怎么解決跨域問題詳解

    springboot+vue項目怎么解決跨域問題詳解

    這篇文章主要介紹了springboot+vue項目怎么解決跨域問題的相關(guān)資料,包括前端代理、后端全局配置CORS、注解配置和Nginx反向代理,并總結(jié)了每種方法的適用場景、優(yōu)點和缺點,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-05-05
  • Java Spring開發(fā)環(huán)境搭建及簡單入門示例教程

    Java Spring開發(fā)環(huán)境搭建及簡單入門示例教程

    這篇文章主要介紹了Java Spring開發(fā)環(huán)境搭建及簡單入門示例,結(jié)合實例形式分析了spring環(huán)境搭建、配置、使用方法及相關(guān)注意事項,需要的朋友可以參考下
    2017-11-11
  • 淺析java雙向冒泡排序算法

    淺析java雙向冒泡排序算法

    這篇文章主要介紹了淺析java雙向冒泡排序算法,并附上源碼,需要的朋友可以參考下
    2015-02-02
  • SpringBoot3文件管理操作方法

    SpringBoot3文件管理操作方法

    這篇文章主要介紹了SpringBoot3文件管理,本文案例只圍繞普通文件和Excel兩種類型進(jìn)行代碼實現(xiàn),包括工程搭建、上傳下載操作,需要的朋友可以參考下
    2023-08-08
  • SpringBoot開啟虛擬線程的實現(xiàn)流程

    SpringBoot開啟虛擬線程的實現(xiàn)流程

    虛擬線程(Virtual?Thread)也稱協(xié)程或纖程,是一種輕量級的線程實現(xiàn),與傳統(tǒng)的線程以及操作系統(tǒng)級別的線程(也稱為平臺線程)相比,它的創(chuàng)建開銷更小、資源利用率更高,本文給大家介紹了SpringBoot如何開啟虛擬線程,需要的朋友可以參考下
    2024-06-06
  • 解決問題:Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources

    解決問題:Failed to execute goal org.apache.m

    這篇文章主要給大家介紹了關(guān)于解決問題:Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources的相關(guān)資料,文中將解決的辦法介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • Mybatis在注解上如何實現(xiàn)動態(tài)SQL

    Mybatis在注解上如何實現(xiàn)動態(tài)SQL

    這篇文章主要介紹了Mybatis在注解上如何實現(xiàn)動態(tài)SQL,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06

最新評論

沾益县| 镇康县| 庄浪县| 阿拉善右旗| 天柱县| 繁峙县| 新乐市| 十堰市| 大洼县| 客服| 沁阳市| 石门县| 漾濞| 津南区| 墨脱县| 泰兴市| 镇巴县| 灯塔市| 清苑县| 南通市| 滦南县| 巩留县| 四川省| 茶陵县| 兴文县| 哈密市| 海林市| 临沭县| 周宁县| 康保县| 云安县| 礼泉县| 黑龙江省| 纳雍县| 翁源县| 永宁县| 集贤县| 南宁市| 山东| 恩施市| 柏乡县|