Java 使用缓冲读取器向数组添加用户输入

Java 使用缓冲读取器向数组添加用户输入,java,bufferedreader,inputstreamreader,Java,Bufferedreader,Inputstreamreader,我使用缓冲读取器读入输入,然后将其添加到数组中。但由于某些原因,它只将最后一个输入添加到数组中。我还想检查第一个输入是否为零。。。这就是我对check变量所做的。但主要问题是它没有将其添加到数组中 public static void main (String[] Args) throws IOException { int[] numbers = new int[100]; Scanner scan = new Scanner(System.in); InputStr

我使用缓冲读取器读入输入,然后将其添加到数组中。但由于某些原因,它只将最后一个输入添加到数组中。我还想检查第一个输入是否为零。。。这就是我对check变量所做的。但主要问题是它没有将其添加到数组中

public static void main (String[] Args) throws IOException
{
    int[] numbers = new int[100];

    Scanner scan = new Scanner(System.in);
    InputStreamReader isReader = new InputStreamReader(System.in);
    BufferedReader bReader;
    bReader = new BufferedReader(isReader);
    int intNumber = Integer.parseInt(bReader.readLine());
    int check = scan.nextInt();
    while (check != 0)
    {
        int i = 0;
        numbers[i] = Integer.parseInt(bReader.readLine());
        check = intNumber;
        i++;
    }
    bReader.close();
}

int i=0
移动到while循环之外。在每次迭代中,
i
被初始化为0,因此数组只有一个值,该值位于while循环外的第0个索引中。在每次迭代中,
i
被初始化为0,因此数组只有一个值,即第0个索引中的值