0

指定された文字列からバイト配列を作成するだけです。

たとえば、私の文字列がString ss = "21331UA";次の場合、バイト配列要素は次のように対応する必要があります。

2 1 3 3 1 U A

このように静的に作成することもできました。byte[] arr = new byte[]{2,1,3,3,1,'U','A'}ただし、このバイト配列は時々変化するため、ランタイムで動的に作成する必要があります。それが問題です。

次のようにして印刷してみました。対応するASCII値が含まれています。これは私が望むものではありません。

byte[] arr = ss.getBytes();

for(int i=0; i<arr.length; i++)
{
    System.out.print(arr[i] + "  ");
}
Ans==> 50  49  51  51  49  85  65

ガイダンスに本当に感謝します....よろしくお願いします

4

2 に答える 2

6

次のように、バイト配列の値をキャストできます。

System.out.print((char)arr[i] + "  ");

または、代わりに、バイト配列をすぐに文字に設定します。

char[] arr = ss.toCharArray();

for(int i=0; i<arr.length; i++)
{
    System.out.print(arr[i] + "  ");
}
于 2012-06-20T15:53:01.290 に答える
0

配列のタイプが であるため、にキャストbyteする必要があります。chararr[i]byte

簡単に言うと

System.out.print((char) arr[i] + "  ");
于 2012-06-20T15:57:06.913 に答える