简体   繁体   English

线程“ AWT-EventQueue-0”中的Java异常java.lang.ArrayIndexOutOfBoundsException:1

[英]Java Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: 1

public class ConsoleControl {

private static Viewer mainGUI;

public static Viewer getMainGUI()
{
    return mainGUI;        
}
    public static void main(String[] args){
    // Imports the Java UI Manager, which allows you to change the basic GUI of the Application
    try { 
        UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel"); 
    } 
    catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
}
    MainModel.setPetShop(FileIO.readPetShop("PetShop.csv"));
    MainModel.setPets(FileIO.readPets("Pets.csv"));
    MainModel.setFish(FileIO.readFish("Fish.csv"));

    MainModel.setPetShopHeader(new String[]{"Name","Address","Phone Number","Website","Opening Times"});
    MainModel.setPetsHeader(new String[]{"Shop","Type","Price","Date Acquired","Notes"});
    MainModel.setFishHeader(new String[]{"Shop","Type","Price","Date Acquired","Latin Name","Food Requirements"});
    mainGUI = new Viewer();
    mainGUI.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

  public static void actOnTableClick(int selectedRow)
{
    ArrayList<Integer> attRowsToHighlight = new ArrayList<>();
    if (mainGUI.getSelectedTab() == 0)
    {
        PetShop ourPetShop = MainModel.getPetShop().get(selectedRow);

        for (int i = 0; i < MainModel.getPets().size(); i++)
        {
            Pets ourPets = MainModel.getPets().get(i);

            if (ourPets.getShop().equals(ourPetShop.getName()))
            {
              //  System.out.print(ourPets);
                attRowsToHighlight.add(i);
               // System.out.print(i);
            }
        }
        mainGUI.highlightRows(1, attRowsToHighlight);
    }


   } }

For some reason, this piece of code gives me the error given in the title, and then a massive list of exceptions. 由于某种原因,这段代码为我提供了标题中给出的错误,然后列出了大量异常。 The console then loads, but none of the data loads, and you have to hover over every section of the console to get it to show. 然后将加载控制台,但不会加载任何数据,您必须将鼠标悬停在控制台的每个部分上才能显示它。 Any help? 有什么帮助吗?

Edit: Here are the exceptions: 编辑:这是例外:

Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 1 at javax.swing.JTable$1.getValueAt(JTable.java:689) at javax.swing.JTable.getValueAt(JTable.java:2720) at javax.swing.JTable.prepareRenderer(JTable.java:5718) at javax.swing.plaf.synth.SynthTableUI.paintCell(SynthTableUI.java:684) at javax.swing.plaf.synth.SynthTableUI.paintCells(SynthTableUI.java:581) at javax.swing.plaf.synth.SynthTableUI.paint(SynthTableUI.java:365) at javax.swing.plaf.synth.SynthTableUI.update(SynthTableUI.java:276) at javax.swing.JComponent.paintComponent(JComponent.java:778) at javax.swing.JComponent.paint(JComponent.java:1054) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JViewport.paint(JViewport.java:725) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JCo 线程“ AWT-EventQueue-0”中的异常java.lang.ArrayIndexOutOfBoundsException:javax.swing.JTable $ 1.getValueAt(JTable.java:689)处为javax.swing.JTable.getValueAt(JTable.java:2720)处为1 .swing.JTable.prepareRenderer(JTable.java:5718)在javax.swing.plaf.synth.SynthTableUI.paintCell(SynthTableUI.java:684)在javax.swing.plaf.synth.SynthTableUI.paintCells(SynthTableUI.java:581) )在javax.swing.plaf.synth.SynthTableUI.paint(SynthTableUI.java:365)在javax.swing.plaf.synth.SynthTableUI.update(SynthTableUI.java:276)在javax.swing.JComponent.paintComponent(JComponent。 javax.swing.JComponent.paint(JComponent.java:1054)处的java:778)javax.swing.JComponent.paint(JComponent.java:1063)处的javax.swing.JComponent.paintChildren(JComponent.java:887)处javax.swing.JComponent的javax.swing.JViewport.paint(JViewport.java:725)在javax.swing.JComponent的javax.swing.JComponent.paintChildren(JComponent.java:887)在javax.swing.JComponent .paintChildren(JComponent.java:887)在javax.swing.JCo mponent.paint(JComponent.java:1063) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JLayeredPane.paint(JLayeredPane.java:585) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5228) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1482) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1413) at javax.swing.RepaintManager.paint(RepaintManager.java:1206) at javax.swing.JComponent.paint(JComponent.java:1040) at java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:39) at sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:78) at sun. javax.swing.JComponent.paintChildren(JComponent.java:887)的mponent.paint(JComponent.java:1063),javax.swing.JComponent.paintChildren(JComponent的javax.swing.JComponent.paint(JComponent.java:1063)的.java:887),位于javax.swing.JComponent.paint(JComponent.java:1063),位于javax.swing.JComponent.paintChildren(JComponent.java:887),位于javax.swing.JComponent.paint(JComponent.java:1063)在javax.swing.JLayeredPane.paint(JLayeredPane.java:585)在javax.swing.JComponent.paintChildren(JComponent.java:887)在javax.swing.JComponent.paintToOffscreen(JComponent.java:5228)在javax.swing。位于javax.swing的RepaintManager $ PaintManager.paintDoubleBuffered(RepaintManager.java:1482)(位于javax.swing.RepaintManager $ PaintManager.paint(RepaintManager.java:1413)位于javax.swing.RepaintManager.paint(RepaintManager.java:1206)位于javax.swing.JComponent Sun的.paint(JComponent.java:1040)在sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:78)在java.awt.GraphicsCallback $ PaintCallback.run(GraphicsCallback.java:39)。 awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:115) at java.awt.Container.paint(Container.java:1967) at java.awt.Window.paint(Window.java:3867) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:781) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:728) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:677) at javax.swing.RepaintManager.access$700(RepaintManager.java:59) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1621) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:705) at java.awt.EventQueue.access$000(EventQueue.java:101) at java.awt.EventQueue$3.run(EventQueue.java:666) at java.awt.EventQueue$3.run(EventQueue.java:664) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(Eve javax.swing.RepaintManager.paintDirtyRegions处的java.awt.Window.paint(Window.java:3867)处的java.awt.Container.paint(Container.java:1967)处的awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:115) (RepaintManager.java:781)at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:728)at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:677)at javax.swing.RepaintManager.access $ 700(RepaintManager.java :59),位于javax.swing.RepaintManager $ ProcessingRunnable.run(RepaintManager.java:1621),位于java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251),位于java.awt.EventQueue.dispatchEventImpl(EventQueue.java: 705),java.awt.EventQueue.access $ 000(EventQueue.java:101),java.awt.EventQueue $ 3.run(EventQueue.java:666),java.awt.EventQueue $ 3.run(EventQueue.java:664)在java.security.ProtectionDomain处java.security.AccessController.doPrivileged(本机方法)在Java.awt.EventQueue.dispatchEvent(Eve处$ 1.doIntersectionPrivilege(ProtectionDomain.java:76) ntQueue.java:675) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105) at java.awt.EventDispatchThread.run(EventDispatchThread.java:90) Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 1 at javax.swing.JTable$1.getValueAt(JTable.java:689) at javax.swing.JTable.getValueAt(JTable.java:2720) at javax.swing.JTable.prepareRenderer(JTable.java:5718) at javax.swing.plaf.synth.SynthTableUI.paintCell(SynthTableUI.java:684) at javax.swing.plaf.synth.SynthTableUI.paintCells(SynthTableUI.java:581) at javax.swing.plaf.synth.SynthTableUI.paint(SynthTableUI.java:365) at javax.swing.plaf.synth.SynthTableUI.update(SynthTableUI.java: ntQueue.java:675)处java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)处java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)处java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java: )的java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)的java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)的java.awt.EventDispatchThread.run(EventDispatchThread.java:90)的异常AWT-EventQueue-0“ java.lang.ArrayIndexOutOfBoundsException:1 at javax.swing.JTable $ 1.getValueAt(JTable.java:689)at javax.swing.JTable.getValueAt(JTable.java:2720)at javax.swing.JTable javax.swing.plaf.synth.SynthTableUI.paintCell(SynthTableUI.java:684)的.prepareRenderer(JTable.java:5718)javax.swing.plaf.synth.SynthTableUI.paintCells(SynthTableUI.java:581)的。在javax.swing.plaf.synth.SynthTableUI.update(SynthTableUI.java:上的swing.plaf.synth.SynthTableUI.paint(SynthTableUI.java:365) 276) at javax.swing.JComponent.paintComponent(JComponent.java:778) at javax.swing.JComponent.paint(JComponent.java:1054) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JViewport.paint(JViewport.java:725) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComponent.paint(JComponent.java:1063) at javax.swing.JLayeredPane.paint(JLayeredPane.java:585) at javax.swing.JComponent.paintChildren(JComponent.java:887) at javax.swing.JComp 276)在javax.swing.JComponent.paintChildren(JComponent.java:887)在javax.swing.JComponent.paint(JComponent.java:1054)在javax。在javax.swing.JComponent.paintChildren(JComponent.java:887)在javax.swing.JComponent.paint的swing.JComponent.paint(JComponent.java:1063)在javax.swing.JComponent.paint (JComponent.java:1063)在javax.swing.JComponent.paintChildren(JComponent.java:887)在javax.swing.JComponent.paint(JComponent.java:1063)在javax.swing.JComponent.paintChildren(JComponent.java: 887)在javax.swing.JComponent.paint(JComponent.java:1063)在javax.swing.JComponent.paintChildren(JComponent.java:887)在javax.swing.JComponent.paint(JComponent.java:1063)在javax。在javax.swing.JComponent.paint(JComponent.java:1063)在javax.swing.JLayeredPane.paint(JLayeredPane.java:585)的swing.JComponent.paintChildren(JComponent.java:887)在javax.swing.JComponent.paintChildren的(JComponent.java:887)在javax.swing.JComp onent.paintToOffscreen(JComponent.java:5228) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1482) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1413) at javax.swing.RepaintManager.paint(RepaintManager.java:1206) at javax.swing.JComponent.paint(JComponent.java:1040) at java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:39) at sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:78) at sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:115) at java.awt.Container.paint(Container.java:1967) at java.awt.Window.paint(Window.java:3867) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:781) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:728) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:677) at javax.swing.RepaintManager.access$700(RepaintManager.java:59) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java javax.swing.RepaintManager $ PaintManager.paintDoubleBuffered(RepaintManager.java:1482)上的onent.paintToOffscreen(JComponent.java:5228)javax.swing.RepaintManager上的javax.swing.RepaintManager $ PaintManager.paint(RepaintManager.java:1413)上的onent.paintToOffscreen(JComponent.java:5228) .paint(RepaintManager.java:1206)at javax.swing.JComponent.paint(JComponent.java:1040)at java.awt.GraphicsCallback $ PaintCallback.run(GraphicsCallback.java:39)at sun.awt.SunGraphicsCallback.runOneComponent( Sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:115)上的SunGraphicsCallback.java:78)java.awt.Window.paint(Window.java:3867)上的java.awt.Container.paint(Container.java:1967)上的SunGraphicsCallback.java:115) )在javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:781)在javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:728)在javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:677)在javax.swing .RepaintManager.access $ 700(RepaintManager.java:59)at javax.swing.RepaintManager $ ProcessingRunnable.run(RepaintManager.java :1621) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:705) at java.awt.EventQueue.access$000(EventQueue.java:101) at java.awt.EventQueue$3.run(EventQueue.java:666) at java.awt.EventQueue$3.run(EventQueue.java:664) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:675) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105) at java.awt.EventDispatchThread.run(EventDispatchThread.java:90) :1621)at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:705)at java.awt.EventQueue.access $ 000(EventQueue.java:101 )的java.awt.EventQueue $ 3.run(EventQueue.java:666)的java.awt.EventQueue $ 3.run(EventQueue.java:664)的java.security.AccessController.doPrivileged(本机方法)的java.security。 ProtectionDomain $ 1.doIntersectionPrivilege(ProtectionDomain.java:76)at java.awt.EventQueue.dispatchEvent(EventQueue.java:675)at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)at java.awt.EventDispatchThread.pumpEventsForFilter( EventDispatchThread.java:128)(java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105) )在java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

This line 这条线

PetShop ourPetShop = MainModel.getPetShop().get(selectedRow);

is probably faulty. 可能是错误的。 selectedRow will be invalid. selectedRow将无效。

The stack trace should show you the exact line that the error is on. 堆栈跟踪应向您显示错误所在的确切行。 This is your best clue. 这是你最好的线索。

The line numbers should be included by default, but if you can't see them then recompile with debug info on (javac -g). 默认情况下应包括行号,但是如果看不到它们,则使用(javac -g)上的调试信息重新编译。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 线程“AWT-EventQueue-0”中的异常java.lang.ArrayIndexOutOfBoundsException:0 - Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: 0 线程“AWT-EventQueue-0”中的异常 java.lang.ArrayIndexOutOfBoundsException - Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException JTable:线程“ AWT-EventQueue-0”中的异常java.lang.ArrayIndexOutOfBoundsException:0&gt; = 0 - JTable: Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: 0 >= 0 线程“ AWT-EventQueue-0”中的异常java.lang.ArrayIndexOutOfBoundsException:0&gt; = 0 - Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: 0 >= 0 线程“ AWT-EventQueue-0”中的异常java.lang.ArrayIndexOutOfBoundsException:无此类子级 - Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: No such child 线程“ AWT-EventQueue-0”中的异常java.lang.ArrayIndexOutOfBoundsException:1&gt; = 1 - Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: 1 >= 1 线程“AWT-EventQueue-0”中的异常java.lang.ArrayIndexOutOfBoundsException:10 - Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: 10 线程“AWT-EventQueue-0”中的异常java.lang.ArrayIndexOutOfBoundsException:100 - Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: 100 线程“ AWT-EventQueue-0”中的异常java.lang.ArrayIndexOutOfBoundsException:-1错误 - Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: -1 error 线程“AWT-EventQueue-0”中的异常 java.lang.ArrayIndexOutOfBoundsException:132 - Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: 132
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM