有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

我用数组创建了JButton循环,但它不起作用

我想按循环创建按钮

  • 1 2 3
  • 4 5 6
  • 7 8 9

但是当我写代码的时候,按钮有array2D

private JButton cells[][];

// Constructor
public SliderGameFrame() {
    JPanel panel = new JPanel();
    this.add(panel);
    for (int i = 1; i <= cells.length; i++) {
        for (int j = 1; j <= cells.length; j++) {
            cells[i][j] = new JButton(" " + i);
            panel.add(cells[i][j]);
        }
    }
}

它不工作,错误消息是java。lang.NullPointerException


共 (1) 个答案

  1. # 1 楼答案

    更改:

        for (int i = 1; i <= cells.length; i++) {
            for (int j = 1; j <= cells.length; j++) {
    

    进入:

    for (int i = 0; i < cells.length; i++) {
        for (int j = 0; j < cells.length; j++) {
    

    二维数组的索引从0到维1开始