netbeans Java - Array Issues [关闭]

deikduxw  于 8个月前  发布在  Java
关注(0)|答案(1)|浏览(60)

**已关闭。**此问题需要debugging details。它目前不接受回答。

编辑问题以包括desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将帮助其他人回答这个问题。
12天前关闭
Improve this question
问题:代码虽然有效,但不能给出给予正确的结果。
代码如下:

private void AddButtonActionPerformed(java.awt.event.ActionEvent evt) {                                          
        // TODO add your handling code here:        
        int i = Integer.parseInt(input.getText());
        int n = 0;
        int [] array;
        
        array = new int[5];
        

        if (n < array.length) {
            array[n] = i;
            System.out.println(Arrays.toString(array));
            System.out.println(array.length);
            n++; 
        } else {
            output.setText("Test.");
            input.setText("");
        }
        
    }

结果如下:

[5, 0, 0, 0, 0]
5

预期结果:第一排满了,头到第二排,重复直到第五排。
任何帮助都是感激不尽的。

变更尝试:

  • if语句中的更改,最初具有不同的值。希望能有所改变。
x9ybnkn6

x9ybnkn61#

不确定我是否正确理解了你的意思,但是看起来你需要将arrayn移动到方法之外,以便在按钮单击之间保留状态。大概是这样的:

// Inside class
private int n = 0;
private int[] array = new int[5];

private void AddButtonActionPerformed(java.awt.event.ActionEvent evt) { 
    int i = Integer.parseInt(input.getText());        

    if (n < array.length) {
        array[n] = i;
        System.out.println(Arrays.toString(array));
        System.out.println(array.length);
        n++; 
    } else {
        output.setText("Test.");
        input.setText("");
    }
    
}

相关问题