Actionlistener不允许我访问数组

时间:2012-05-21 21:34:23

标签: java swing actionlistener

我有一个填充数据的2d dbl数组,我可以在代码中的任何地方调用:

System.out.println(twodarray[0][0]);

它工作得很好。当我将它作为Actionlistener的一部分调用时,它将无法工作,并且我得到一个Null指针异常。

我的事件监听器代码:

public void actionPerformed(ActionEvent e)      
 {
     if (e.getSource() == firstbutton)
     {

         System.out.println(twodarray[0][0]);

     }

 }

我不知道从哪里开始解决这个问题。该数组存在有效数据,如我的代码中的println所示。我在哪里错了?

2 个答案:

答案 0 :(得分:2)

您可以访问该阵列;那不是问题。问题是当调用动作侦听器时,数组变量为null。确保您没有在构造函数或方法中隐藏数组变量。有关更详细的答案,请提供有关您的问题和代码的更多详细信息。

换句话说,您是初始化类数组变量,还是仅初始化方法或构造函数本地的数组变量?

答案 1 :(得分:0)

您还需要记住,侦听器正在UI线程上运行。确保不在其他地方填充二维数组。