如何快速输入整数2d数组

时间:2014-07-27 12:42:06

标签: java java.util.scanner bufferedreader

我必须在不到3秒的时间内输入5个int数组,意味着执行时间应该小于3,而且我正在使用Scanner类或者那个,但它会使执行时间更长,所以还有其他可能方式,我必须得到输入

1 2 3
4 5 6
7 8 9
10 11 12
13 14 15

并且必须在一行中输入1 2 3?我该怎么做...? 我把最初的字符串作为输入,然后使用split("")方法将其分离,然后使用包装类解析它?还有其他办法吗?

1 个答案:

答案 0 :(得分:2)

尝试以下代码段,我猜你可能正在寻找输入2d数组而不使用使用Scanner分割字符串。

    int[][] array = new int[5][2];
    Scanner scan = new Scanner(System.in);

    int i=0;
    int k=0;
    while(scan.hasNextInt()){

        array[i][k] = scan.nextInt();

        k++;

        if(k == 2) {
            k = 0;
            i++;
        }

        if(i == array.length){
            break;
        }
    }

    for(int p=0; p < array.length; p++) {

        for(int j=0;j < 2; j++) {           
            System.out.print(array[p][j] + " ");
        }
    }