字符串是不可变的?

0 java string

只是有一个问题,我们如何重写上面的代码,以便仅创建一个String对象?

字符串是不可变的,不是studentDetails已经有一个String对象

public void displayString(Student[] students)
{
   String studentDetails = "";
   for (Student stu : students)
   {
       studentDetails += stu.getFirstName();
       studentDetails += " ";
       studentDetails += stu.getLastName();
       studentDetails += " ";
       studentDetails += stu.getAge();
       studentDetails += "\n";  
   }
   System.out.println("Student Details are: ");
   System.out.println(studentDetails);
}
Run Code Online (Sandbox Code Playgroud)

孙兴斌*_*孙兴斌 5

String 对象是不可变的,而变量 studentDetails不是。

调用时 studentDetails += stu.getFirstName(),您创建了一个新String 对象并将其分配给变量 studentDetails