-2

ユーザーが配列内のデータを検索できるようにする atextfieldと aを作成する次のコードがあります。button

//Creates a form to search data, list for it and buttons to sort the list.
            rightPanel.add(Box.createRigidArea(new Dimension(20, 20)));
            final TextField searchTextField;
            searchTextField = new TextField ();
            rightPanel.add(searchTextField);
            rightPanel.add(Box.createRigidArea(new Dimension(20, 20)));
            JButton searchConfirmButton = new JButton("Search");
            rightPanel.add(searchConfirmButton);
            searchConfirmButton.addActionListener(new ActionListener() {

                public void actionPerformed(ActionEvent e)
                {
                    try {
                        search = searchTextField.getText();
                        int index = Arrays.asList(data).indexOf(search);
                        for (String result : data) {
                            if (result.contains(search)) {
                                System.out.println(result);
                                System.out.println(index);
                            }
                        }
                    } catch (NullPointerException e1) {

                    }
                }
            });

しかし、データが存在するかどうかにかかわらず、データを検索するたびに、プログラムはnullpointerexception次の内容を返します。

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at program.Program$4$1.actionPerformed(Program.java:233)
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)

この場合、行 233 にはこの行が含まれます。if (result.contains(search)) {

4

1 に答える 1