精华内容
下载资源
问答
  • Java中的isEmpty方法、null以及““的区别

    万次阅读 多人点赞 2018-07-02 16:11:15
    这是一个比较容易混淆的概念,为了弄清楚这个问题,最好的方法当然是写程序来验证,开门见山,上代码!public class TestNull { public static void main(String[] args) { String a = new String();...

    这是一个比较容易混淆的概念,为了弄清楚这个问题,最好的方法当然是写程序来验证,开门见山,上代码!

    public class TestNull {
    
        public static void main(String[] args) {
            String a = new String();
            String b = "";
            String c = null;
            if (a.isEmpty()) {
                System.out.println("String a = new String");
            }
    
            if (b.isEmpty()) {
                System.out.println("String b = \"\"");
            }
    
            if (c == null) {
                System.out.println("String c = null");
            }
    
            if (null == a) {
                System.out.println("String a = null");
            }
    
            if (a == "") {
                System.out.println("a = ''");
            }
    
            if (a.equals("")) {
                // 由于a是字符串,字符串的比较需要用equals,不能直接用 ==
                System.out.println("a.equals(\"\") is true");
            }
    
    		/*if (c.isEmpty()) {
    			// 这里会报空指针,即null不能使用此方法
    			System.out.println("c == null and c.isEmpty");
    		}*/
    
            List<String> list = new ArrayList<>();
            // list.add("");
            if (list.isEmpty()) {
                System.out.println("list is empty");
            }
            System.out.println(list.size());
        }
    }

    控制台输出:

    分析:

    此时a是分配了内存空间,但值为空,是绝对的空,是一种有值(值存在为空而已)。

    此时b是分配了内存空间,值为空字符串,是相对的空,是一种有值(值存在为空字串)。

    此时c是未分配内存空间,无值,是一种无值(值不存在)。

     

    综上所述:

    isEmpty()分配了内存空间,值为空,是绝对的空,是一种有值(值 = 空)
    ""分配了内存空间,值为空字符串,是相对的空,是一种有值(值 = 空字串)
    null是未分配内存空间,无值,是一种无值(值不存在)

     

    end

    -----------------------------------------------------------------------------------------------------

    注:作者 望穿秋水见伊人,本人使用Eclipse Java EE IDE for Web Developers.Version: Oxygen.3a Release (4.7.3a)

    展开全文
  • JAVA isEmpty()方法的使用

    千次阅读 2017-05-02 23:59:53
    eg1:String str = "hello"; if(!sst.isEmpty()){  //当s不为空时,才去做某些事情  //doSomeing } eg2:if(gridSettingMap.isEmpty()){  queryGridSetting(); }
    eg1:String str = "hello";
    
    if(!str.isEmpty()){
        //当str不为空时,才去做某些事情
        //doSomeing
    }
    eg2:if(gridSettingMap.isEmpty()){
        queryGridSetting();
    }
    展开全文
  • Java isEmpty()方法

    千次阅读 2020-03-25 18:05:01
    List调用的isEmpty()方法 即使list的size为0,仍不会报空指针错误,而是返回true String调用的isEmpty()方法 String str; 若str=null 则会报空指针; str="" -> true; String a = new String() 运行时,会将 ...

    List调用的isEmpty()方法
    即使list的size为0,仍不会报空指针错误,而是返回true

    String调用的isEmpty()方法
    String str;
    若str=null 则会报空指针;
    str="" -> true;
    String a = new String() 运行时,会将 “” 赋值给a 也为true;
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 1 参考文档 这是一个比较容易混淆的概念,为了弄清楚这个问题,最好的方法当然是写程序来验证,开门见山,上代码! public class TestNull { public static void main(String[] args) { String a = new String...

    1
    参考文档

    这是一个比较容易混淆的概念,为了弄清楚这个问题,最好的方法当然是写程序来验证,开门见山,上代码!

    public class TestNull {
     
    	public static void main(String[] args) {
    		String a = new String();
    		String b = "";
    		String c = null;
    		if (a.isEmpty()) {
    			System.out.println("String a = new String");
    		}
     
    		if (b.isEmpty()) {
    			System.out.println("String b = \"\"");
    		}
     
    		if (c == null) {
    			System.out.println("String c =null");
    		}
     
    		if (null == a) {
    			System.out.println("String a =null");
    		}
     
    		if (a == "") {
    			System.out.println("a = ''");
    		}
    	}
    }
    

    控制台输出:
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ier1SErB-1592119153267)(en-resource://database/631:1)]

    分析:
    此时a是分配了内存空间,但值为空,是绝对的空,是一种有值(值存在为空而已)。
    此时b是分配了内存空间,值为空字符串,是相对的空,是一种有值(值存在为空字串)。
    此时c是未分配内存空间,无值,是一种无值(值不存在)。

    综上所述:

    isEmpty()分配了内存空间,值为空,是绝对的空,是一种有值(值 = 空)
    " "分配了内存空间,值为空字符串,是相对的空,是一种有值(值 = 空字串)
    null是未分配内存空间,无值,是一种无值(值不存在)

    2020.6.29 , 再一次遇见了使用
    null 与 isEmpty()的问题 :
    判断使用是否为没有数据的问题
    不是null , 而是 0 ,
    在这里插入图片描述

    我的需求是 , 在第601行的位置获取数据库中的内容,
    在602行中,如果没有获取到数据,就进入到610行的else,当然要先做非空判断

    当我没有加上 !users.isEmpty的时候,只使用null 的判断,这个是不生效的,也就是说,在数据库取到的数据为0条,但是不是null,则进入到了if中.而我的期望是取到的数据为0条的时候进入到下面的610行的else中,则使用到了isEmpty()的判断,
    **isEmpty()**翻译后为 : 是为空
    在这里插入图片描述

    那么当数据为空的时候, 这个方法返回的是true,所以需要在前面加上 ! 取反

    IsEmpty()是Java中用于判断某种容器是否有元素的系统库函数。
    如用来判断ArrayList,HashSet,HashMap是否有元素等。
    
    在Java中,可以用isEmpty();判断一个顺序容器ArrayList里面是否有元素,
    如果有的话返回一个Boolean类型的值false,否则返回true。
    

    源码如下:
    在这里插入图片描述
    翻译,源码上的注释:返回true的条件是这个列表不包含任何元素.
    在这里插入图片描述

    import java.util.ArrayList;//在此处引入ArrayList所在的库
     
    ArrayList<Integer> a = new ArrayList<Integer>();
    System.out.println(a.isEmpty());//打印出true
    a.add(5);
    System.out.println(a.isEmpty());//打印出false
    

    参考文档 = https://blog.csdn.net/peng86788/article/details/80885814

    参考文档 = https://blog.csdn.net/sinat_41815248/article/details/85310367

    展开全文

空空如也

空空如也

1
收藏数 4
精华内容 1
关键字:

javaisempty函数

java 订阅