错误:线程“AWT-EventQueue-0”中的异常java.lang.NullPointerException

时间:2016-08-17 05:44:56

标签: java methods nullpointerexception

这是一个连接2个jComboBoxes,2个jXDatePickers和一个jLabel的方法。

public void updateJLabel(){
    Double wres=0.0;
    String FinalWres;
    int FinalWresint;
    boolean help=false;
    double  idprovider2 = Double.parseDouble((String)jComboBox2.getSelectedItem());
    double  idprovider4 = Double.parseDouble((String)jComboBox4.getSelectedItem());
    wres=idprovider4 - idprovider2 ;
    if (idprovider4%1==0 && idprovider2%1==0){
        FinalWres=" ώρες";
        FinalWresint=wres.intValue();
    }
    else if((idprovider4%1==0 && idprovider2%1!=0) || (idprovider4%1!=0 && idprovider2%1==0)){
        FinalWres=" ώρες και 30 λεπτά";
        FinalWresint=wres.intValue();
        help=true;
    }
    else {
        if (wres.intValue()<wres){
            FinalWres=" ώρες";
            FinalWresint=wres.intValue()+1;
        }
        else{
            FinalWres=wres.intValue()+" ώρες";
            FinalWresint=wres.intValue();
        }
    }
    if (jXDatePicker1.getDate().getDay()!= jXDatePicker2.getDate().getDay()){
        if (help==true){
            FinalWresint=23+FinalWresint;
            jLabel3.setText(FinalWresint+FinalWres);
        }
        else{
            FinalWresint=24+FinalWresint;
            jLabel3.setText(FinalWresint+FinalWres);
        }
    }
    else
        jLabel3.setText(FinalWresint+FinalWres);

}

它工作正常,但是当我运行程序并从jDatePicker中选择一个日期时,我收到以下错误:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException

以下是完整版:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at NewJFrame.updateJLabel(NewJFrame.java:317)
at NewJFrame.jXDatePicker1ActionPerformed(NewJFrame.java:370)
at NewJFrame.access$100(NewJFrame.java:23)
at NewJFrame$2.actionPerformed(NewJFrame.java:127)
at org.jdesktop.swingx.JXDatePicker.fireActionPerformed(JXDatePicker.java:911)
at org.jdesktop.swingx.JXDatePicker.commitEdit(JXDatePicker.java:740)
at org.jdesktop.swingx.plaf.basic.BasicDatePickerUI.commit(BasicDatePickerUI.java:914)
at org.jdesktop.swingx.plaf.basic.BasicDatePickerUI$Handler.monthViewActionPerformed(BasicDatePickerUI.java:1504)
at org.jdesktop.swingx.plaf.basic.BasicDatePickerUI$Handler.actionPerformed(BasicDatePickerUI.java:1479)
at org.jdesktop.swingx.JXMonthView.fireActionPerformed(JXMonthView.java:1845)
at org.jdesktop.swingx.JXMonthView.commitSelection(JXMonthView.java:1732)
at org.jdesktop.swingx.plaf.basic.BasicMonthViewUI$Handler.mouseReleased(BasicMonthViewUI.java:1753)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3320)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

以下是生成该错误的行

if (jXDatePicker1.getDate().getDay()!= jXDatePicker2.getDate().getDay()){

欢迎任何帮助,谢谢!

0 个答案:

没有答案