java相关杂记

命令行编译java文件、运行java:
//在所在文件目录路径下
javac test.java
//编译后,运行
java test
lit != null、!list.isEmpty()和list.size()>0的区别:

 如果list==null,那么它根本就没有在堆上存在,即还未进行初始化,此时调用任何方法都会抛出空指针异常;
 list.size == 0,则表示该list已经new过,只是其中没有存入任何值;
 isEmpty()实际上是获取size的值进行判断再返回,list.size()是直接返回属性size的值;

//isEmpty()的源码
public boolean isEmpty() {
      return size == 0;
}

作个比喻:1.有没有瓶子list != null;
    2.瓶子里有没有水,list.isEmpty()或list.size > 0,判断前需要有瓶子,如果瓶子都没有会报nullException;
    3.list.add(null)会造成list.isEmpty()为false,list.size()为1,所以要避免list.add(null)陷阱;

你可能感兴趣的:(java相关杂记)