String 与 String str=new String();区别
String str1;
System.out.println(str1); 这样写必须给str初始化为null;
而String str2=new String();
System.out.println(str2); 这样写结果是什么也没有
请教一下为什么???
--------------------编程问答--------------------
点源码就行了
--------------------编程问答--------------------
String str2=new String("111"); 这个时候你输出的是:111
String str2=new String(); 你没有传值进去,所以就什么都没有
--------------------编程问答--------------------
1.String str1;
System.out.println(str1);
这样写会报错的,因为str1未定义,必须进行初始化。
2.String str2=new String();
System.out.println(str2); 这样写结果是什么也没有
你在内存里创建了一个str2,没有赋值,当然结果什么都没有。
--------------------编程问答--------------------
哦 懂了 果然我还是菜鸟 谢谢了 请问 入门的话 看什么书比较好
--------------------编程问答--------------------
第一步:String str1; 只是在栈中创建了一个引用地址,在堆中没有指向的对象。所以str1 不是对象。System.out.println(str1); 就不成立,因为println(Object o);
第二部:String str2=new String(); 很明显 创建了一个str2的空对象,str2为地址,对象为空,有地址有易做图。所以str2是对象,可以被println();
--------------------编程问答--------------------