新手,求救,“”and null null != billcode && billcode != ""前后 有什么区别!困扰 一报错 我就试着 改到底 什么意思 还是 不明白 什么时候 判断为null什么时候 判断为 “” 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 此回复为自动发出,仅用于显示而已,并无任何其他特殊作用楼主【ldy214】截止到2008-06-27 17:14:02的历史汇总数据(不包括此帖):发帖数:49 发帖分:1245 结贴数:48 结贴分:1225 未结数:1 未结分:20 结贴率:97.96 % 结分率:98.39 % 值得尊敬 null表示对象还没有实例化,是空的,不占内存""是一个空字符串对象,占内存,字符串长度为0 null 空没有引用任何对象实力"" 空字符串,是一个对象。所以判断相等时应该用"".equal(String对象)。通常对于String对象要判断两种情况。其他对象只需要判断null的情况。对于String对象if(!"".equal(String对象) && String对象 != null);就可以了 null就是什么也没有,没有分配内存空间""是分配了内存空间,但只是一个没有字符的字符串是判断是不是"",必须保证首先不为null,所以一般是先 null != billcode 再 billcode != ""不过建议你统一一下风格,要么 billcode != null && billcode != "" 要么null != billcode && "" != billcode 字符串比较用String的equals方法 比如 我的form 里面的text 没有对它进行操作 刚打开 页面 是 “” 还是 null 没有操作点击 按钮 提交 不过 没有写内容 是 “” 还是 null null != billcode && billcode != "" 假设billcode="str";那么billcode 里面存一个地址,这个地址指向“str”在内存中的位置;billcode == null,说明billcode里面存任何地址;billcode == "",说明billcode里面存了地址,但是根据这个地址找到的值是“”;这下应该知道怎么用它了吧! null 是空 不指向任何内存地址"" 就是 指向某个直为 "" 字符串的内存地址 public class MapIt { public static void main(String[] args) { String billcode; billcode = null; if (billcode != "") System.out.println("billcode != \"\""); billcode = ""; if (null == billcode) System.out.println("null==billcode"); billcode = "hello"; if (null != billcode && billcode != "") System.out.println("null != billcode && billcode != \"\""); }} String a;//当为属性时默认初始化为null也可以a=null;此时没有生成新对象的当只写""时生成了对象 你的 这段代码语法上是没有毛病的只要你的变量是类型的就可以。null 代表的是一个应用没有任何实际的单元指向。例如你家说搬家 只说家要搬没说具体位置一样。而""空串是一个有实际地址引用的数据了。所以你家也就知道要搬去哪里了。 大家进来看一个关于String类的问题 java虚拟机如何修改字符集 我的窗口为什么不显示按钮??? 我想知道到底有几斤几两 关于如何取得panel中指定区域并存在图片中的问题 关于JNetPcap的问题 如何向文件写入一个转行符? 关键字this,我在执行实例时,出现的错误! 我是Java的初学者,有些问题请问? 唉我怎么还弄不清楚!关于java访问oracle数据库的问题! 【竞赛奖励】SageZk 、scf37、sort_superdullwolf 每人获得100专家分,请进来收取 数据转换问题
楼主【ldy214】截止到2008-06-27 17:14:02的历史汇总数据(不包括此帖):
发帖数:49 发帖分:1245
结贴数:48 结贴分:1225
未结数:1 未结分:20
结贴率:97.96 % 结分率:98.39 %
值得尊敬
""是一个空字符串对象,占内存,字符串长度为0
"" 空字符串,是一个对象。所以判断相等时应该用"".equal(String对象)。通常对于String对象要判断两种情况。其他对象只需要判断null的情况。对于String对象
if(!"".equal(String对象) && String对象 != null);就可以了
""是分配了内存空间,但只是一个没有字符的字符串是判断是不是"",必须保证首先不为null,所以一般是先 null != billcode 再 billcode != ""
不过建议你统一一下风格,要么 billcode != null && billcode != "" 要么null != billcode && "" != billcode
点击 按钮 提交 不过 没有写内容 是 “” 还是 null
那么billcode 里面存一个地址,这个地址指向“str”在内存中的位置;
billcode == null,说明billcode里面存任何地址;
billcode == "",说明billcode里面存了地址,但是根据这个地址找到的值是“”;这下应该知道怎么用它了吧!
"" 就是 指向某个直为 "" 字符串的内存地址
String billcode;
billcode = null;
if (billcode != "")
System.out.println("billcode != \"\""); billcode = "";
if (null == billcode)
System.out.println("null==billcode"); billcode = "hello";
if (null != billcode && billcode != "")
System.out.println("null != billcode && billcode != \"\"");
}
}
也可以a=null;此时没有生成新对象的
当只写""时生成了对象
null 代表的是一个应用没有任何实际的单元指向。例如你家说搬家 只说家要搬没说具体位置一样。
而""空串是一个有实际地址引用的数据了。所以你家也就知道要搬去哪里了。