String.valueOfにはbyte[]引数がないため、として処理されObject
、toString()
メソッドが呼び出されます。配列はこのメソッドを実装していないため、Object.toString()は配列内で処理され、結果は各インスタンス。
Stringに変換する場合byte[]
は、コンストラクターString(byte [])またはString(byte [] bytes、Charset charset)を使用します。
byte[] test = {-51};
byte[] test2 = {-51};
byte[] test3 = {-51};
System.out.println(new String(test));
System.out.println(new String(test2));
System.out.println(new String(test3));
結果:
Í
Í
Í
配列の内容を表示する場合は、Arrays.toString(byte [])を使用します
byte[] test = {-51};
byte[] test2 = {-51};
byte[] test3 = {-51};
System.out.println(Arrays.toString(test));
System.out.println(Arrays.toString(test2));
System.out.println(Arrays.toString(test3));
結果:
[-51]
[-51]
[-51]