gpt4 book ai didi

java - 空指针异常和 Swing

转载 作者:行者123 更新时间:2023-11-30 04:14:20 24 4
gpt4 key购买 nike

嗨,我正在尝试让字母 x 出现在第 1-4 行,字母 y 出现在第 7-10 行。由于某种原因,当我用 else 代替 else if 时,除了 1-4 之外的每一行都得到“y”,它就起作用了。它标记了 else 已读取并表示要删除此标记,并表示空指针异常,我在第 26 行(带有frame.add 的行)上收到错误

import java.awt.Color;
import java.awt.GridLayout;
import java.util.Random;
import java.util.Scanner;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;
public class ButtonGrid {
JFrame frame=new JFrame();
JButton[][] grid;
public ButtonGrid(int width, int length){
Random r=new Random();
int w=r.nextInt(13-1)+1;
frame.setLayout(new GridLayout(width,length));
grid=new JButton[width][length];
Scanner g = new Scanner(System.in);
for(int y=0;y<length;y++){
for(int x=0;x<width;x++){
if (y < 4) {
grid[x][y]=new JButton("x");-I am trying to set lines 1-4 to x
}
else if (y>7){
grid[x][y]=new JButton("y");-I am trying to set lines 7-10 to y
}
frame.add(grid[x][y]);
else{ "IT MARKS THIS AS WRONG"
grid[x][y]=new JButton(" ");
}
}
}
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);``
}
public static void main(String[] args) {
new ButtonGrid(10,10);

}
}

我认为我做的一切都是正确的,只是不确定为什么 eclipse 会给我这些错误。请帮忙!最终我将在第 7-10 行输入,但这个测试不起作用。我正在 Swing 中玩棋盘游戏 Stratego,如果有人知道如何帮助我的话。

最佳答案

要解决您的问题之一:您只能在 if block 之后立即添加 else block 。您收到错误是因为您在 else if { ... } 之间插入了语句 frame.add(grid[x][y]); block 和您的 else { ... } block 。

关于java - 空指针异常和 Swing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18776628/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com