Java空字符串与null的区别和判断字符串是否为空的方法

 我来答
裔婉君
2016-09-26 · 超过70用户采纳过TA的回答
知道小有建树答主
回答量:330
采纳率:5%
帮助的人:129万
展开全部
虽然都是没有信息,但是null代表堆内存中根本没有这个东西,而空字符串就完全不同了,空字符串也是字符串,他是有内存空间的

判断字符串是否为空
1
2
3
4
5
6
7
8
/**
* 判断字符串是否为空
* @param str 字符串
* @return 是否为空
*/
public static boolean isEmptyString(String str) {
return str == null || str.trim().length() == 0;
}
pmq5205209
2016-09-26 · TA获得超过1064个赞
知道小有建树答主
回答量:908
采纳率:71%
帮助的人:409万
展开全部
在回答你的问题之前,先说一下Java声明变量以及赋值的过程。比如,String str = "Hello!",其实分为两步,String str, str="Hello!"。第一步是产生一个引用,放到了栈中,第二部赋值,为变量分配内存地址,也就是放在堆中。String a=null,只是进行了第一步,也就是没有分配内存。String b= "",两步都有进行,值为空,但是分配了内存地址。判断两字字符串值是否相同的方法是isequal(),判断字符串str为空可以这个 str.isEqual(""),或者str.isEmpty()。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友09e9065
2016-09-26 · TA获得超过821个赞
知道小有建树答主
回答量:1103
采纳率:28%
帮助的人:179万
展开全部
s=="" && s==null
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式