如何在此命令上修复此错误谢谢....线程“main”中的异常java.lang.ArrayIndexOutOfBoundsException:0

时间:2014-03-02 19:30:17

标签: java

public class GörüntüAlma {

    public static void main  (String [] args  ){




    26---> (error)PlanarImage resim=JAI.create(null, args[0]);

    String Sresim = "boyut= " + resim.getWidth() + "X" +resim.getHeight()+ "Grup=" + resim.getNumBands()  ;

    JFrame tablo = new JFrame();
    tablo.setTitle("Göster:" + args [0]);

    Container Pane =tablo.getContentPane();
    Pane.setLayout(new BorderLayout());

    DisplayJAI dj= new DisplayJAI(resim);

    Pane.add(new JScrollPane(dj),BorderLayout.CENTER);

    Pane.add(new JLabel(Sresim),BorderLayout.SOUTH);

        tablo.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        tablo.setSize(400,400);
        tablo.setVisible(true);





    }


}

如何在此命令上修复此错误谢谢 线程“main”中的异常java.lang.ArrayIndexOutOfBoundsException:0     atgörüntü.işleme.sb.GörüntüAlma.main(GörüntüAlma.java:26)

1 个答案:

答案 0 :(得分:2)

JAI.create(null, args[0]);

如果args为空,您将忘记检查会发生什么;在这种情况下,索引0处没有任何内容。因此错误:java.lang.ArrayIndexOutOfBoundsException: 0

解决方案:检查您的阵列是否为空并在此情况下提前退出。在此之前:

if (args.length == 0) {
    System.err.println("I expect at least one argument");
    System.exit(2);
}

附录:不知道你是如何首先启动程序的,但看起来你根本没有传递任何参数......上面的代码会告诉你这个。