title: How come I am getting a AWT Eventqueue Null pointer exception?
body: <pre><code>            Employee emp = null;
  
  
  
              int searchVal1 = (StringUtils.isNotBlank(tab2textField.getText())) ? Integer.parseInt(tab2textField.getText()) : 0;
  
  
              String searchVal2 = tab2textField2.getText();
              String searchVal3 = tab2textField3.getText();
  
              ArrayList&lt;Employee&gt; arraylist = null;
              ArrayList&lt;Employee&gt; finalarraylist = null;
  
  
  
  
  
              //add to a new arraylist
  
              try
              {
               FileInputStream fin = new FileInputStream("employeeal.ser");
               ObjectInputStream in = new ObjectInputStream(fin);
  
               arraylist = (ArrayList) in.readObject();
  
               Iterator&lt;Employee&gt; it = arraylist.iterator();
               while(it.hasNext())
               {
                  emp = it.next();
  
                  System.out.println("First Name: " + emp.getFname());
                  System.out.println("Last Name: " + emp.getLname());
                  System.out.println("ID: " + emp.getId());
  
                  int intval = emp.getId();
                  String stringf = emp.getFname();
                  String stringl = emp.getLname();
  
                  //if(emp.getId() == searchVal1 || emp.getFname() == searchVal2 || emp.getLname() == searchVal3)
                  //if((emp.getId() == searchVal1) || (emp.getFname()) == "a") || (emp.getLname() == "a"))
                  if(emp.getId() == searchVal1 || (emp.getFname()).equals(searchVal2) || (emp.getLname()).equals(searchVal3))
                  {
                      //finalarraylist.add(emp);
  
                      //finalarraylist.add(new Employee(emp.getId(), emp.getFname(), emp.getLname()));
  
                      finalarraylist.add(new Employee(intval, stringf, stringl));
  
                      System.out.println("added");
                  }
                  else
                  {
                      System.out.println("NOT added!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
                  }
  
               }
  
               in.close();
               fin.close();
              }catch(IOException e)
              {
               e.printStackTrace();
  
              }catch(ClassNotFoundException e2)
              {
               System.out.println("Class not found");
               e2.printStackTrace();
  
              }
  </code></pre>
  
  <p>So I am trying to make a list out of another list, but when I get to this line:</p>
  
  <pre><code>                    finalarraylist.add(new Employee(intval, stringf, stringl));
  </code></pre>
  
  <p>it crashes and says null pointer, but an arraylist doesn't have a fixed storage, so I don't really get why I am getting a null pointer exception.</p>
  
  <pre><code>First Name: rewer
  Last Name: erw
  ID: 2342
  NOT added!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  First Name: hue
  Last Name: huer
  ID: 34343
  NOT added!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  First Name: hueer
  Last Name: huer
  ID: 34343
  NOT added!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  First Name: hueer
  Last Name: huer
  ID: 34343565
  NOT added!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  First Name: a
  Last Name: a
  ID: 1
  </code></pre>
  
  <p>This is the output. It crashes before printing "added".</p>
  
  <pre><code>Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
  at TextField.actionPerformed(Test.java:676)
  at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
  at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2346)
  at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
  at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
  at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
  at java.awt.Component.processMouseEvent(Component.java:6527)
  at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
  at java.awt.Component.processEvent(Component.java:6292)
  at java.awt.Container.processEvent(Container.java:2234)
  at java.awt.Component.dispatchEventImpl(Component.java:4883)
  at java.awt.Container.dispatchEventImpl(Container.java:2292)
  at java.awt.Component.dispatchEvent(Component.java:4705)
  at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898)
  at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4533)
  at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462)
  at java.awt.Container.dispatchEventImpl(Container.java:2278)
  at java.awt.Window.dispatchEventImpl(Window.java:2739)
  at java.awt.Component.dispatchEvent(Component.java:4705)
  at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:746)
  at java.awt.EventQueue.access$400(EventQueue.java:97)
  at java.awt.EventQueue$3.run(EventQueue.java:697)
  at java.awt.EventQueue$3.run(EventQueue.java:691)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
  at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86)
  at java.awt.EventQueue$4.run(EventQueue.java:719)
  at java.awt.EventQueue$4.run(EventQueue.java:717)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
  at java.awt.EventQueue.dispatchEvent(EventQueue.java:716)
  at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
  at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
  at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
  at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
  </code></pre>