1. 程式人生 > >Java中的集合類與物件的判空

Java中的集合類與物件的判空

1.集合類Array、List、Map、Set的判空

a.List進行判空

//判斷關聯的積分項是否為空,若不為空,則插入資料庫
 if(pointsItemList != null && !pointsItemList.isEmpty()){
     // 不為空的程式碼處理
 }

!= null 與 !isEmpty()就如前輩所說的杯子與水的道理:!= null是為了判斷有沒有水杯;!isEmpty()是為了判斷水杯裡有沒有水;二者合一,就能穩穩的判定pointsItemList 是否為空。

誤區:使用pointsItemLists.size() == 0,
List一旦初始化,就無法用.size()來處理,因為.size()是判斷的元素的個數。

b.Array進行判空

// 判斷是否為空
public static boolean isEmptyArray(Object[] objs) {
    return (null == objs || objs.length == 0);
}

// 判斷是否不為空
public static boolean isNotEmptyArray(Object[] objs) {
    return !isEmptyArray(objs);
}

c.Map進行判空

// 判斷是否為空
public static boolean isEmptyMap(Map<?, ?> map) {
    return
(null == map || map.size() == 0); } // 判斷是否不為空 public static boolean isNotEmptyMap(Map<?, ?> map) { return !isEmptyMap(map); }

d.Set進行判空

// 判斷是否為空
public static boolean isEmptySet(Set<?> set) {
    return (null == set || set.size() == 0);
}

// 判斷是否不為空
public static boolean isNotEmptySet
(Set<?> set) { return !isEmptySet(set); }
2.String 物件的判空

a.判定空物件:String s = null;

定義:

空物件是指定義一個物件s,但是沒有給該物件分配空間,即沒有例項化該物件,因此,空物件在呼叫所有物件方法時候都會丟擲異常,如s.length(), s.isEmpty()等方法。

判定:

判斷一個字元變數是否是null ,使用 邏輯判斷 等於(==)與null物件比較,程式碼表達式如下:
s == null;

b.判定空值”“:String s = “”;

定義:

空值是指一個字串物件已經例項化,即系統已經給該變數分配了空間,只是物件的內容為空。

判定:

三種方式:
(1) s.equals(“”), equals方法比較的是兩個物件的內容是否相同;
(2) s.length() == 0, length()方法是檢視某個字串物件的字元個數;
(3) s.isEmpty(),isEmpty()方法是判斷某個字串物件字元個數是否為0 ;

c.判定空格” “:String s = ” “;

定義:

是指一個字元物件已經例項化,物件的內容為空格。

判定:

s.equals(” “) ;