当前位置: 首页 > 知识库问答 >
问题:

如何复制不是别名的字符串,而是组成字符串的所有字符的副本?

王昆
2023-03-14

我的代码

DefaultListModel<String> getAllMacrows()
{
    DefaultListModel<String> rows= new DefaultListModel<String>();
    int pes=0;
    int nameStart;
    int parEnd;     
    String row;
    String strTemplateTemp=new String(strTemplate);

    strTemplateTemp=strTemplateTemp.replace("\n"," ");
    // now both strTemplateTemp and  strTemplate have chnaged
    // want just strTemplateTemp to chnage

共有1个答案

缪风史
2023-03-14

在Java中,string实例是不可变的,因此不可能更改字符串(即有副作用)。声明:

 strTemplateTemp=strTemplateTemp.replace("\n"," ");

创建一个新字符串,并将对新字符串的引用赋给变量strtemplatetemp

字符串是常数;它们的值在创建后不能更改。字符串缓冲区支持可变字符串。因为String对象是不可变的,所以可以共享它们。java.lang.String

 类似资料: