-1
String
は変更不可能であり、値は変更できませんが、StringBuffer
の値はメソッドパラメータのように送信されたときに変更されません。私の理解から、それは新しい価値 "bb"で変わったはずです。ご協力ありがとうございました。StringBufferメソッドのパラメータ - 値が変更されない
class Ideone {
public static void main (String[] args) {
String s = "aa";
StringBuffer sb = new StringBuffer("aa");
modify(s, "bb");
modify2(sb, "bb");
System.out.println(s);
System.out.println(sb);
}
public static void modify(String s, String ss) {
s = ss;
}
public static void modify2(StringBuffer sb, String ss) {
sb = new StringBuffer(ss);
}
}
これはsb.setLength(0)で処理されました。 sb.append(ss);ありがとう、 – bluesony
はい、それは同等でしょう。 –