A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 黑龙江—刘鹏 于 2012-8-28 20:35 编辑

String s = "";
这句话代表什么呢;
就是说 s的对象是什么内容啊

7 个回复

正序浏览
s对象是一个空字符序列,String的不带参数的构造方法:

“public String()初始化一个新创建的 String 对象,它表示一个空字符序列。注意,由于 String 是不可变的,不必使用该构造方法。 ”
你可以:
String str1=new String();
String str2=“”;
System.out.println(str1.equals(str2));
结果输出时true,即str2也是一个空字符串序列。
回复 使用道具 举报
张振纲 发表于 2012-8-28 20:15
表示String s的引用指向""字符串

谢谢啦:victory:
回复 使用道具 举报
杨卫腾 发表于 2012-8-28 20:26
s 存储了没有内容的字符串""的地址,也就是说String s 的引用指向了 "" 的地址。  这样的好处会避免出现空 ...

谢谢啦:victory:
回复 使用道具 举报
王金科 发表于 2012-8-28 20:28
这里返回的结果为true
s指向的内容为空

谢谢啦:victory:
回复 使用道具 举报
  1. public class Test {

  2.         /**
  3.          * @param args
  4.          */
  5.         public static void main(String[] args){
  6.                 // TODO Auto-generated method stub
  7.                 String str1 = "";
  8.                 String str2 = new String();
  9.                 System.out.println(str1.equals(str2));
  10.         }
  11. }
复制代码
这里返回的结果为true
s指向的内容为空
回复 使用道具 举报
s 存储了没有内容的字符串""的地址,也就是说String s 的引用指向了 "" 的地址。  这样的好处会避免出现空指针异常。
回复 使用道具 举报
表示String s的引用指向""字符串
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马