社区
非技术区
帖子详情
Java中的空字符串的判断
whilliy
2005-05-24 11:52:35
一直用.NET现在被迫拿起Java,想问一下在Java中准确判断一个字符串的方法:
比方说str是一个String对象
if(str!=null&&!str.equals("")可以吗?
if(str!=null&&str!="")呢?
判断str的内容是否为"0"呢?
if(str=="0")还是if(str.equals("0"))呢?他们有什么区别呢?
...全文
581
3
打赏
收藏
Java中的空字符串的判断
一直用.NET现在被迫拿起Java,想问一下在Java中准确判断一个字符串的方法: 比方说str是一个String对象 if(str!=null&&!str.equals("")可以吗? if(str!=null&&str!="")呢? 判断str的内容是否为"0"呢? if(str=="0")还是if(str.equals("0"))呢?他们有什么区别呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wumingwangzi
2005-05-25
打赏
举报
回复
字符串的比较还是用equals,==对String来说是比较对象的,包括引用
humanity
2005-05-25
打赏
举报
回复
补充,String 的副本 ( 句柄不同 ) , equals 总是相等的,但是 a== b 总是 false.
上面所说的 “不行”就是说 false.
humanity
2005-05-25
打赏
举报
回复
Java 中 a == b 比较的是句柄。 equals 默认(继承自 Object) 也是比较句柄,但是 String 类覆写了 public boolean equals(Object o) 方法, 使他们比较字符串中每一个字符。
String a ="string";
String b="string";
// 如果这两个右边是一模一样,那么他们就可以 用 a == b 判断,
String c = new String("string"); // a==c ? 不行。 c 是 "string" 的一个副本,句柄不同。
Java 中 JVM 对 String 的处理:
对于常量串 :"string" 这样的,每当你 String a="string" ; String b="string" ;的时候 ,JVM 都会搜索一下 字符串常量列表,看看有没有已存在的,如果找到一个完全相等的,就会返回句柄给 a 和 b,
如果没有找到,新建一个并返回句柄。也就是说 a 和 b 肯定是同一个东西。
对于String c=new String("string") ; String d="string".trim(); 你得到的都是副本。
你可以对你想到的每种情况使用 :
System.out.print("a="+ System.identityHashcode(a));
System.out.print("b="+ System.identityHashcode(b));
System.out.print("c="+ System.identityHashcode(c));
看看他们是不是一样的,如果是就 a==b 为 true 。
Java
开发
中
的String
判断
空
及在多种转换String
字符串
场景下的
判断
空
本文围绕
Java
开发
中
字符串
处理展开,探讨常见场景如判
空
、转换、拼接和比较。分析了多种
字符串
转换方式的优缺点及适用场景,介绍判
空
工具类的使用与陷阱。针对实际应用
中
的问题给出解决方案,总结最佳实践,以提高代码健壮性和可维护性。
判断
Java
中
的
空
字符串
本文对比了三种
Java
中
判断
字符串
是否为
空
的方法:方法一通过null和equals方法;方法二检查
字符串
长度;方法三利用isEmpty方法。通过实际测试,方法二和方法三因效率更高而被推荐。
java
判断
数据库
空
字符串
长度_
判断
Java
中
的
空
字符串
本文介绍三种
Java
中
判断
字符串
是否为
空
的方法,并通过实验对比了它们的效率。方法包括:使用equals进行比较、检查
字符串
长度及利用isEmpty函数。
从效率考虑
判断
Java
中
的
空
字符串
方法
本文介绍了三种用于检查
Java
字符串
是否为
空
的方法,并通过实验对比了它们的效率。方法包括:使用equals方法、比较
字符串
长度及利用
Java
SE 6.0引入的isEmpty方法。
中
判断
字符串
是否为
空
_
java
中
的数字以及如何
判断
字符串
是不是数字
本文探讨
Java
中
判断
字符串
是否为数字的方法。先排除
空
字符和null,再用toCharArray方法转换为char数组
判断
,该方法对浮点数等情况不好用;接着用数字包装类的parse方法,除二进制等部分情况外符合预期;最后介绍第三方库commons - lang3的NumberUtils工具类,isCreatable方法效果较好。
非技术区
23,404
社区成员
70,513
社区内容
发帖
与我相关
我的任务
非技术区
Java 非技术区
复制链接
扫一扫
分享
社区描述
Java 非技术区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章