Java 如何重新分配和增加字符串变量的值

Java 如何重新分配和增加字符串变量的值,java,c++,Java,C++,我有下一个C++示例: this->name=new char[strlen(nom)+1]; 所以,我想知道如何用java实现这个示例。该班有: private String name; 我想实现这个方法: public void setNombre(String nom) 我试着做: this.name= new String(nom.length()+1); 在C++中: this->name=new char[strlen(nom)+1]; 我试着做: this.n

我有下一个C++示例:

this->name=new char[strlen(nom)+1];
所以,我想知道如何用java实现这个示例。该班有:

private String name;
我想实现这个方法:

public void setNombre(String nom)
我试着做:

this.name= new String(nom.length()+1);
在C++中:

this->name=new char[strlen(nom)+1];
我试着做:

this.name= new String(nom.length()+1);

字符串在java中是不可变的。在C++版本中,看起来像是在创建一个空数组,字符大小为nOM + 1。 在Java中,不能将空字符数组分配给字符串。好的,您可以创建一个充满“\u0000”的字符串,但之后您将永远无法修改字符串,所以我真的看不出它的用途

编辑:我认为您只需要将名称设置为值nom,以便执行以下操作:

public void setNombre(String nom){
  this.name = nom;
}

<>但是这不是你的C++代码所做的。

你明白C++代码的作用吗?