java - Java中的ArrayIndexOutofBounds / NullPointerException

原文 标签 java swing jlabel jcombobox indexoutofboundsexception

我是Java的初学者。所以我的问题是我试图隐藏窗口中的所有照片组件,并使其他一些组件出现。但是问题是,每次我使用Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 10选择一个项目时,总会抛出JComboBox

这是错误的代码块:

for (cnt1=0; cnt1<10; cnt1++);
        {
            labels1[cnt1].setVisible(true);
        }

        for (cnt2=0; cnt2<10; cnt2++);
        {
            labels2[cnt2].setVisible(false);
        }


        for (cnt3=0; cnt1<10; cnt3++);
        {
            labels3[cnt3].setVisible(false);
        }

        for (cnt4=0; cnt4<10; cnt4++);
        {
            labels4[cnt4].setVisible(false);
        }

        for (cnt5=0; cnt5<10; cnt5++);
        {
            labels5[cnt5].setVisible(false);
        }

你能告诉我这里是什么问题吗?如果您需要,我将发布整个代码。先感谢您。

编辑:我已经修复了数组中的错误,但是这次。编译器给我这个错误:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException

顺便说一下,这是声明我的数组的片段:
String iconFiles1[] = {"Articuno.png", "Blastoise.png", "Charizard.png", "Kabutops.png", "Mewtwo.png", "Moltres.png", "Omastar.jpg", "Pikachu.jpg", "Venusaur.png", "Zapdos.png"};
String Jlabels1[] = {"Articuno", "Blastoise", "Charizard", "Kabutops", "Mewtwo", "Moltres", "Omastar", "Pikachu", "Venusaur", "Zapdos"};
ImageIcon icons1[] = new ImageIcon[iconFiles1.length];
JLabel labels1[] = new JLabel[Jlabels1.length];

这是它在GUI中的分配:
for (int cnt1=0; cnt1<labels1.length; cnt1++)
        {
            labels1[cnt1].setVisible(true);
        }

我做对了吗?答案表示赞赏。再次。谢谢。

最佳答案

在至少一个for循环中,您似乎有不正确的变量(正如其他一些张贴者所指出的那样)。

还是,得到ArrayIndexOutOfBoundsException的原因是因为在所有for循环之后都有分号,因此使它们除了增加计数器变量外什么都不做。您在for循环中递增的变量不是在for循环本身中本地声明的,因此它们的作用域是您当前正在使用的任何函数(也就是它们存在于for循环之外)。因此,当循环完成递增时,您的计数器将太大(在这种情况下为10)--->因此是ArrayIndexOutOfBoundsException: 10

相关文章:

java - Java中的ImageIcon

java - 在具有JVM的Mac上找不到网络摄像头

java - 哈希列表中的检索列表。

java - 如何在JTextArea中添加垂直和水平滚动条以查看完整文件-JAVA

java - 在屏幕上查找复合位置

java - 如何在“公开无效 Action 已执行”中使用JLabel

java - Maven多模块项目不会因编译错误而失败

java - Java类“月”-仍然没有得到返回……还有其他一些事情

java - 如何正确处理图形上下文-我需要最后尝试吗? (Java 1.7)

java - 在JLabel中刷新数据