You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ArrayList在Swing监听器中变为空的问题求助

问题:按钮监听器中获取的ArrayList为空

我正在为学校编写程序,遇到如下问题:尝试通过按钮从另一个类获取ArrayList,但该ArrayList进入监听器后变为空;即使在监听器外的其他函数中使用,它仍然是空的。我尝试将getter放在不同位置,但均未解决问题。

代码示例

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.util.ArrayList;

public class addPanel {
    private JPanel panel1;
    private JTextField textField1;
    private JButton OKButton;
    private JButton registreerButton;
    private JTextField textField2;
    private String voorNaam;
    private String achterNaam;

    public addPanel() {

        textField1.addKeyListener(new KeyAdapter() {
            @Override
            public void keyReleased(KeyEvent e) {
                super.keyReleased(e);
                voorNaam = textField1.getText().toLowerCase();
            }
        });
        textField2.addKeyListener(new KeyAdapter() {
            @Override
            public void keyReleased(KeyEvent e) {
                super.keyReleased(e);
                achterNaam = textField2.getText().toLowerCase();
            }
        });
        OKButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {

                System.out.println(gebruikas); // 输出为空
                returnInputGebruiker();
            }
        });
    }
    Gebruikers g = new Gebruikers();
    ArrayList<Gebruiker> gebruikas = g.getGebruikers();
    
    public void worksFine() {
        System.out.println(gebruikas);// 单独调用时能正常输出内容
    }

    public void returnInputGebruiker(){

        System.out.println(gebruikas);// 输出为空
    }

    public void run(JFrame parent) {
        JFrame frame = new JFrame();
        frame.setContentPane(panel1);
        frame.setTitle("persoon details");
        frame.pack();
        frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        if (parent != null)
            frame.setLocationRelativeTo(parent);
        frame.setVisible(true);
    }
}

内容的提问来源于stack exchange,提问作者Juanita Pardo Isidoro Rasgado

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 22:35:38