Java 使用Jbuttons递增int以用于数组

Java 使用Jbuttons递增int以用于数组,java,swing,int,jbutton,increment,Java,Swing,Int,Jbutton,Increment,程序应该在每次按下一个数字按钮时将该数字保存到一个数组中,但是我用来指向数组中下一个单元格的计数器似乎只有在按下同一个按钮两次时才会更新 例如,如果将121323311输入键盘,它将打印1 1 2 2 3 3 4以进行阵列计数 编辑:我的buildGUI()方法中的原始代码是: JPanel buttons = new JPanel(); buttons.setLayout(new GridLayout(0,3)); JButton one = new JButton("1"); Button

程序应该在每次按下一个数字按钮时将该数字保存到一个数组中,但是我用来指向数组中下一个单元格的计数器似乎只有在按下同一个按钮两次时才会更新

例如,如果将121323311输入键盘,它将打印1 1 2 2 3 3 4以进行阵列计数

编辑:我的buildGUI()方法中的原始代码是:

JPanel buttons = new JPanel();
buttons.setLayout(new GridLayout(0,3));

JButton one = new JButton("1");
ButtonEventHandler bl1 = new ButtonEventHandler();
one.addActionListener(bl1);

JButton two = new JButton("2");
ButtonEventHandler bl2 = new ButtonEventHandler();
two.addActionListener(bl2);
因此,对于每个按钮,我现在将其更改为:

JPanel buttons = new JPanel();
ButtonEventHandler bl = new ButtonEventHandler();
buttons.setLayout(new GridLayout(0,3));

JButton one = new JButton("1");
one.addActionListener(bl);

JButton two = new JButton("2");
two.addActionListener(bl);

它是有效的。谢谢。

您似乎有多个
按钮实例听您的单个按钮。出于您的目的,您只需要一个
ButtonEventHandler
实例来监听所有您的按钮。

谢谢。我修改了代码,只创建了一个ButtonVenthandler,现在可以使用了。