-1

Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "" at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67) at java.base/java.lang.Integer.parseInt(Integer.java:678) at java.base/java.lang.Integer.parseInt(Integer.java:786) at GUI$3.actionPerformed(GUI.java:119) at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972) at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2313) at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279) at java.desktop/java.awt.Component.processMouseEvent(Component.java:6626) at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3389) at java.desktop/java.awt.Component.processEvent(Component.java:6391) at java.desktop/java.awt.Container.processEvent(Container.java:2266) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5001) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833) at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948) at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575) at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:746) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:744) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:743) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

It is part of code which I'm having trouble (I think)

 for (int i = 0; i < model.getRowCount(); i++)
            {
                String processNum = (String) model.getValueAt(i, 0);
                int arriveTime = Integer.parseInt((String) model.getValueAt(i, 1));
                int burstTime = Integer.parseInt((String) model.getValueAt(i, 2));
                                    
                scheduler.add(new Row(processNum, arriveTime, burstTime));
            }
            
            scheduler.process();
            
            for (int i = 0; i < model.getRowCount(); i++)
            {
                String processNum = (String) model.getValueAt(i, 0);
                Row r = scheduler.getRow(processNum);
                model.setValueAt(r.getWaitingTime(), i, 3);
                model.setValueAt(r.getTurnaroundTime(), i, 4);
            }
            
            waitingtimeResult.setText(Double.toString(scheduler.getAverageWaitingTime()));
            turnaroundtimeResult.setText(Double.toString(scheduler.getAverageTurnaroundTime()));
  • You're trying to parse an empty string into a number – JayC667 May 14 '22 at 07:35
  • Yeah right but why I'm getting error? How can I fix it? – 서비로브자보키르 May 14 '22 at 07:36
  • By **not** parsing an invalid String? You haven't provided the full code, so I can't tell you exactly where you go wrong. It's probably one of the lines `int arriveTime = Integer.parseInt((String) model.getValueAt(i, 1)); int burstTime = Integer.parseInt((String) model.getValueAt(i, 2));`. Store the values from `model.getValueAt(i, x)` in a String first, then check if that String is valid, and then parse it. – JayC667 May 14 '22 at 08:47

0 Answers0