java String类初始为null问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java String类初始为null问题相关的知识,希望对你有一定的参考价值。

程序代码:
String str = null;
str+="test";
System.out.println(str);
得到结果为什么是:nulltest
jdk 1.5 .那位高人给解释下null这个关键字怎么会转换为字符"null".

当每个对象以字符串返回时都会试图用它的toString()方法,而null关键字对应“null” 参考技术A 给字符串赋空值一般
String str = "";
就可以
参考技术B String str = null;//应该用String str = "";

http://zhidao.baidu.com/question/116175366.html?si=3
参考技术C 1.5以上包括1.5版本jdk的话
String+String实际上使用StringBuilder的append实现的.
而append方法return append(String.valueOf(obj));
String.valueOf()方法
return (obj == null) ? "null" : obj.toString();
如果是null,返回字符串null

以上是关于java String类初始为null问题的主要内容,如果未能解决你的问题,请参考以下文章

String str = null只在java中初始化或声明吗? [重复]

Java中是使用增强for的null问题

java怎么将string类型转化为日期类型

06. Java基础之String

初始化 Guava ImmutableMap

Java char int 转换/char[]char数组 字符串 转换 String.valueOf/Arrays.sort/int[]数组初始0/Integer[]数组初始null