黑马程序员技术交流社区

标题: String str= "";和String str= null;String str = new String();的区别 [打印本页]

作者: SunCowbee    时间: 2016-9-11 11:26
标题: String str= "";和String str= null;String str = new String();的区别
String str= "";和String str= null;String str = new String();的区别
作者: Frankle    时间: 2016-9-11 12:53
String str= "",是将一个空字符串对象赋值给str
String str= null,是将str的地址值置为null(null是空常量,不能调用任何方法,如果一个对象引用为null,调用时时会发生空指针异常)
String str = new String();是在堆内存中创建一个String类型的对象
作者: love前世今    时间: 2016-9-11 13:06
这是面试题吗,第一个是空字符串,null是空常量,第三是创建对象
作者: chkanon    时间: 2016-9-11 13:22
String str= "";这是空串,""在内存中有这个对象;后两个只是有声明,并没有具体指向哪个对象
作者: Array先生    时间: 2016-9-11 13:27
String str= "";这是空串,""在内存中空间;
String str=null;是将指向为null常量,将不会指向对空间,调用将会报错,
String str = new String();  知识声明内存中一块空间
作者: 奋斗41280    时间: 2016-9-11 14:36
Frankle 发表于 2016-9-11 12:53
String str= "",是将一个空字符串对象赋值给str
String str= null,是将str的地址值置为null(null是空常量 ...

是酱紫的
作者: wangyqwei    时间: 2016-9-11 15:21
第一个是空串,第二个是将地址赋值为空,任何方法都无法使用,第三个就是创建了个对象




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2