我正在从一个简单的系统收集数组中的元素,通过一系列按钮事件选择它,将其复制到一个名为'oneRay'的新数组中,并继续循环元素来测试用户的知识。如果用户正确地从一个提示标识一个答案,该部分中的2D阵列的第一个元素变为“”,并且将被跳过,此代码:Java Swing空指针异常做 - 而
do{
pick = random.nextInt(oneRay.length);
}while(!(oneRay[pick][0].equals("")));
哪个继续返回上述异常。下面的代码创建随机所讨论的类的成员:
Random random = new Random()
但是,是什么我是做错了什么? 任何帮助将不胜感激。
UPDATE:是的元素通过一系列的开关语句是直接适当的选择阵列oneRay初始化
错误报告是巨大的,因为它为我试图建立摆动UI启动,所以它扔左,右失败
这里是我用来初始化:
switch(subject){
case 1:
switch(unit){
case 1: oneRay = new String[Master.SciChemArray_IntroductionANDFirstChapter.length][2];
for(int i = 0; (Master.SciChemArray_IntroductionANDFirstChapter.length) > i; i++){
oneRay[i][0] = Master.SciChemArray_IntroductionANDFirstChapter[i][0];oneRay[i][1] = Master.SciChemArray_IntroductionANDFirstChapter[i][1];}
default: System.exit(0); break;
} break;
case 2:
switch(unit){
case 1:
oneRay = new String[Master.MathaRay_Part2.length][2];
for(int i = 0; (Master.MathaRay_Part2.length) > i; i++){
oneRay[i][0] = Master.MathaRay_Part2[i][0]; oneRay[i][1] = Master.MathaRay_Part2[i][1];} break;
default: System.exit(0); break;
} break;
在创建这个设置我通过一些对应主题和单元编号,然后将其用于复制有关阵列李柯所以^^
单元和主体被传递像这样:
mathstatb1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent l) {
new SwingImplementation(2, 1);
}});
由此按钮发送关闭主体2和单元1
而这里是错误,现在在底部,如果有人真的想要他们:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at wbh.SwingImplementation.<init>(SwingImplementation.java:60)
at wbh.matstatMenu$1.actionPerformed(matstatMenu.java:23)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
是否已经初始化了'oneRay'及其元素? –
我需要查看所有代码和整个异常报告。 – tbodt
如果你正在获得NPE,这显然不会被初始化。发布您的相关代码。 –