私はJavaが初めてです。以下のプログラムを正常に実行しましたが、出力がわかりません。これがプログラムです。
public class StringBufferCharAt {
public static void main(String[] args)
{
StringBuffer sb = new StringBuffer("abcdefghijklmnopqrstuvwxyz");
System.out.println("Length of sb : " + sb.length());
int start = 0;
int end = 10;
char arr[] = new char[end - start];
sb.getChars(start, end, arr, 0);
System.out.println("After altering : "+ arr.toString());
}
}
このプログラムを実行した後: 次の出力が得られました。
Length of sb : 26
After altering : [C@21a722ef
私の質問:
- 出力に 10 文字ではなく、なぜ 11 文字なのか。
- sb 内にある元の文字 "abcdefghij" を印刷する代わりに、他の文字を取得したのはなぜですか。