Java空字符串和null的区别
发布时间:2020-12-15 02:37:35 所属栏目:Java 来源:网络整理
导读:“”是一个长度为 0 且占内存的空字符串,在内存中分配一个空间,可以使用 Object 对象中的方法。 例如: “”.toString() 等。 null 是空引用,表示一个对象的值,没有分配内存 ,调用 null 的字符串的方法会抛出空指针异常。例如如下代码: String str = n
“”是一个长度为 0 且占内存的空字符串,在内存中分配一个空间,可以使用 Object 对象中的方法。例如:“”.toString() 等。null 是空引用,表示一个对象的值,没有分配内存,调用 null 的字符串的方法会抛出空指针异常。例如如下代码:
String str = null; 空字符串 "" 是长度为 0 的字符串。可以调用以下代码检查一个字符串是否为空: if (str.length() == 0) 或if (str.equals("")) 空字符串是一个 Java 对象,有自己的串长度(0)和内容(空)。不过,String 变量还可以存放一个特殊的值,名为 null,这表示目前没有任何对象与该变量关联。要检查一个字符串是否为 null,要使用以下条件:if (str == null) 有时要检查一个字符串既不是 null 也不为空串,这种情况下就需要使用以下条件:if (str != null && str.length() != 0) 注意:首先要检查 str 不为 null。如果在一个 null 值上调用方法,会出现错误。示例如下: public static void main(String[] args) { String str1 = new String(); String str2 = null; String str3 = ""; System.out.println(str3.length()); // 空字符串""的长度为0 System.out.println(str2.length()); // 抛出空指针异常 System.out.println(str1); // 输出"" System.out.println(str1 == str2); // 内存地址的比较,返回false System.out.println(str1.equals(str2)); // 值的比较,返回false System.out.println(str2 == str3); // 内存地址的比较,返回false System.out.println(str3.equals(str2)); // 值的比较,返回false System.out.println(str1 == str3); // 内存地址的比较,返回false System.out.println(str1.equals(str3)); // 值的比较,返回true } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java – “转换为试用资源”在Netbeans – 酷豆?
- java – 如何使用JSF和Facelets实现一些if-then逻辑?
- 如何使用Java中的lambda函数对每列和每行的列表列表求和?
- java – 在Spring Expression Language中访问属性文件
- entity-framework – 实体框架乐观并发异常
- java – 为J2ME应用程序设计GUI
- Java通用Observer模式实现未选中调用为原始类型
- Java自定义LRU缓存实现
- 基于Netty和SpringBoot实现一个轻量级RPC框架-Server篇
- 插入顺序字典(如Java的LinkedHashMap)在Swift?