问答详情
源自:2-2 Java 中字符串的不变性

如何使用原来的对象?克隆?

如:
String s1="imooc";
String si="i love"+s1;
如何使用前一个s1的值?


提问者:七九九 2016-02-11 19:01

个回答

  • l_yanlei
    2016-02-16 16:03:29
    已采纳

    si = "i love " + s1

    这样的话,你并没有改变s1对于imooc的引用。也就说s1还是指向imooc的。

    如果你写成:

    String s1 = "imooc";

    s1 = "i love " + s1;

    那么你就创建了一个新对象,内容是i love imooc(s1原来引用的对象)。然后s1指向了这个新对象。

    既然s1指向的都不是原来的对象imooc,我觉得是无法去使用s1来输出imooc的。或许你可以新建一个引用重新指向imooc

  • Its_forever
    2016-02-12 00:48:18

    String s1="imooc";
    String si="i love"+s1;//这里的"+s1"就是使用了上面定义的s1。加号为连接符表示连接两个字符串