面试常被坑的String的问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lwl20140904/article/details/80333383

如下:

 String str = "abc";
 str="bcd";
 System.out.println(str);

博主几次都答错了也是蠢够了,我的第一想法是String是不可变的,所以每次我都说是abc。现解释一下为什么答案是bcd;

String str; //声明一个String类型的引用为str
str ="abc";//创建一个对象abc,然后把str指向这个对象;
str ="bcd";//再创建一个对象bcd,把str指向这个对象

所以很显然,输出的str应该是bcd这个对象。(从始至终,str只是个引用)
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页