求大神解释为什么“”在这段代码中的null在这段代码中的区别!! “” null性能javastring 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你可以设为null,只是访问时注意一下即可,""这是指向空字符串 我知道可以设置为null,但是在性能上我觉得设置null更好,毕竟他不需要创建对象,而“‘空字符串是需要创建新的对象的! 看到到this.parameters.put(parameter, v);说明你的 Map<String,String>parametersparameters.put(parameter,null); 是没有问题的 if(null != parameterValue) 的判断只是防止 parameterValue为空的时候 parameterValue.trim()会出现异常又:“”是new出了个新的对象所以:“”改为null是不是更好 凭如今的这计算机,无论是字符串还是null,效率差别不大!理论上,null更好 1.看parameters是什么map,如果是个hashtable则,不能放入null.所以需要转字符串空.2.根据约定,为了不在满篇代码中都是null'的判断,所以约定永不返回null. “”改为null更好就你目前这段代码而言 。 关键还是看这行代码 this.parameters.put(parameter, v);,如果允许v是null,就用null。正如你所说的,null对象不用创建,不过String v ="";这个并没有创建新对象,这里用的是常量池中的“”。如果是String v = new String("");这就创建了新对象,有一丁点性能影响。 不好意思,没太看懂,如果parameterValue为空的话根本进不了里面的代码,怎么还parameterValue.trim()出现异常呢? 我的意思是 你把“”改为null 你的程序不会出错 ,《“”是new出了个新的对象,而null没有,而在性能上new一个新的对象是要耗费系统性能上。》你自己的话 哪你为什么不使用null 没有感觉使用null 在性能上有多大的提升,String v = ""; //这句代码并不会每次执行都new一个对象,如果jvm中已经存在“” 字符串,往后就不会再new 了,直接拿来用用一个例子来解释,比如整个程序只有以下代码String v1 = ""; //会new 一个字符串 String v2 = ""; //不会newString v3 = ""; //不会new 受教了,现在终于理解到这段代码为什么用”“而不用null了,谢谢大神们! BufferedOutputStream图片输出问题 想学Glassfish,请推荐一些书籍和视频了。 新手问问 JAVA中如何用接口实现多继承和多态 想学JavaBean,看什么书入门比较好? 一个没有解决的问题 又见倒分贴 关于eclipse下载的问题 请教各位大侠,在VisalAge for Java 中怎么把JRadioButton添加到ButtonGroup 所有考过SCJP的人来看看这三道线程题!!!!!!!!!! java之JDK和JRE以及各版本的区别 java写的汉诺塔演示动画(原创)
说明你的 Map<String,String>parameters
parameters.put(parameter,null); 是没有问题的
if(null != parameterValue) 的判断
只是防止 parameterValue为空的时候 parameterValue.trim()会出现异常
又:“”是new出了个新的对象
所以:“”改为null是不是更好
2.根据约定,为了不在满篇代码中都是null'的判断,所以约定永不返回null.
就你目前这段代码而言 。
我的意思是 你把“”改为null 你的程序不会出错 ,《“”是new出了个新的对象,而null没有,而在性能上new一个新的对象是要耗费系统性能上。》你自己的话 哪你为什么不使用null
String v = ""; //这句代码并不会每次执行都new一个对象,如果jvm中已经存在“” 字符串,往后就不会再new 了,直接拿来用用一个例子来解释,比如整个程序只有以下代码
String v1 = ""; //会new 一个字符串
String v2 = ""; //不会new
String v3 = ""; //不会new