Я работаю над простой системой, которая собирает элементы из массива, который выбирается из серии событий кнопок, копирует его в новый массив под названием oneRay и продолжает цикл через его элементы для проверки пользователя на их знание. Если пользователь правильно идентифицирует ответ из запроса, то первый элемент массива 2D в этом разделе становится «», и пропускается с этим кодом:Java Swing Null Pointer Exception do-while
do{
pick = random.nextInt(oneRay.length);
}while(!(oneRay[pick][0].equals("")));
который продолжает возвращать вышеупомянутое исключение. Следующий код создает случайный случай в качестве члена данного класса:
Random random = new Random()
Так что же я могу делать неправильно? Любая помощь будет принята с благодарностью.
UPDATE: Да элементы инициализируются через ряд операторов коммутатора, что прямой собственно выбранный массив oneRay
Отчет об ошибке огромен, как он будет запущен, как я пытаюсь построить качели пользовательский интерфейс, так что Бросают неудачи левые и правый
Вот что я использовал для инициализации:
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;
При создании этой установки я прохожу номер, соответствующий предмет и номер блока, которые затем используются для копирования соответствующего массив li ке так ^^
Unit и Subject передаются следующим образом:
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. Отправьте соответствующий код. –