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)
答案 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);
}
附录:不知道你是如何首先启动程序的,但看起来你根本没有传递任何参数......上面的代码会告诉你这个。