0

文字列入力を[][]のint配列に変換するにはどうすればよいですか。

たとえば、入力が3aの場合は、[2] [0]のインデックスに戻り、5eの場合は、[4][4]のインデックスに戻る必要があります。

4

1 に答える 1

0

このような:

public static void main(String[] args) {
    int[][] array;

    array = createArray("3a");
    System.out.println(array.length + "," + array[0].length);

    array = createArray("5e");
    System.out.println(array.length + "," + array[0].length);

    array = createArray("9g");
    System.out.println(array.length + "," + array[0].length);
}

private static int[][] createArray(String input) {
    int a = Integer.parseInt(input.substring(0, 1)) - 1;
    int b = input.charAt(1) - 97;
    return new int[a][b];
}

これは以下を出力します:

2,0
4,4
8,6

また、入力を に渡す前に、何らかの検証方法を実行してくださいcreateArray。単純な正規表現パターンがそのトリックを行います: [0-9][a-z].

于 2012-12-03T17:20:16.937 に答える