-1

CharacterSequence を単一の整数を含む整数配列に直接変換しようとしました。

CharSequence nbr = "478";
int j;
int[] testArray = new int[100];

for(j = 0; j <= nbr.length() - 1; j++)
    testArray[j] = Character.getNumericValue(nbr.charAt(j));

System.out.println(testArray);

望ましい [4,7,8] の代わりに、コンソールは次のようなものを返します。

[I@424c2849

ケース '0'、'1'、...、'8'、'9' と対応する割り当てを使用してスイッチを設定しても、問題は解決しませんでした。

あなたが私を助けてくれることを願っています!前もって感謝します ;)

4

2 に答える 2

1

toString配列はメソッドをオーバーライドしません。したがって、任意の配列を印刷しようとすると、ObjectクラスtoStringメソッドが呼び出され、そのメソッドによって返される表現が取得されます。これは次の形式です。Type@hashCode

必要な表現を取得するには、Arrays.toStringメソッドを使用して配列を出力します: -

System.out.println(Arrays.toString(testArray));

それとは別に、整数配列を次のように宣言する必要があります。

int[] testArray = new int[nbr.length()];

サイズを使用するのではなく100

于 2013-02-09T22:43:23.207 に答える
0

試してみてください

    CharSequence nbr = "478";
    int j;
    int[] testArray = new int[100];

    for(j = 0; j <= nbr.length() - 1; j++)
        testArray[j] = Character.getNumericValue(nbr.charAt(j));

    for(int i : testArray){
        System.out.println(i);
    }
于 2013-02-09T22:45:11.233 に答える