Collection接口和Map接口的 size 方法和 isEmpty方法

一、Collection接口的 size 方法和 isEmpty方法

int size(); 

返回列表中元素的数目,如果这个列表包含超过Integer.MAX_VALUE,则返回Integer.MAX_VALUE

16进制0x7fffffff 10进制2147483647
所以说一个List 容器中最多可以存 21亿多个对象的引用 (null对象也算)

boolean isEmpty();

是否该列表不包含元素

所以说boolean isEmpty()和int size() ==0意思一样,没有区别

list == null 代表这个list 这个引用是否指向的是null 还是 new ArrayList();

从数据库里查询出一个数据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的数目,如果这个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(); }

猜你喜欢

转载自www.cnblogs.com/huameitang/p/10716157.html