一刨肃、Collection接口的 size 方法和 isEmpty方法
int size()
返回列表中元素的數(shù)目,如果這個列表包含超過Integer.MAX_VALUE箩帚,則返回Integer.MAX_VALUE
16進制0x7fffffff 10進制2147483647
所以說一個List 容器中最多可以存 21億多個對象的引用 (null對象也算)
boolean isEmpty()
是否該列表不包含元素
所以說boolean isEmpty()和int size() ==0意思一樣真友,沒有區(qū)別
list == null 代表這個list 這個引用是否指向的是null 還是 new ArrayList();
從數(shù)據(jù)庫里查詢出一個數(shù)據(jù)list怎么判斷紧帕?
if (list !=null && !list.isEmpty())
這樣寫是否正確盔然,研究下大神們怎么寫的
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-collections4</artifactId>
<version>4.1</version>
</dependency>
//判斷是否為空
public static boolean isEmpty(final Collection<?> coll) {
return coll == null || coll.isEmpty();
}
map是否可以判斷?
我們知道Collection和Map是兩種不同的接口,所以說不能是嗜,那要怎么判斷呢愈案?
二、Map接口的 size 方法和 isEmpty方法
int size()
返回map中key-value的數(shù)目鹅搪,如果這個map包含超過Integer.MAX_VALUE站绪,則返回Integer.MAX_VALUE
16進制0x7fffffff 10進制2147483647
boolean isEmpty()
是否該map不包含key-value元素
map 判斷出怎么判斷呢?應該是同理
if (map != null && !map.isEmpty())
<dependency>
<groupId>com.xiaoleilu</groupId>
<artifactId>hutool-all</artifactId>
<version>3.2.3</version>
</dependency>
/**
* Map是否為空
*
* @param map 集合
* @return 是否為空
*/
public static boolean isEmpty(Map<?, ?> map) {
return null == map || map.isEmpty();
}
/**
* Map是否為非空
*
* @param map 集合
* @return 是否為非空
*/
public static boolean isNotEmpty(Map<?, ?> map) {
return null != map && false == map.isEmpty();
}