我刚刚开始使用Java,我正在玩我在网上复制的代码。我在网上复制了这段代码并尝试在eclipse上运行它
http://introcs.cs.princeton.edu/java/12types/SpringSeason.java.html
public class SpringSeason {
public static void main(String[] args) {
int month = Integer.parseInt(args[0]);
int day = Integer.parseInt(args[1]);
boolean isSpring = (month == 3 && day >= 20 && day <= 31)
|| (month == 4 && day >= 1 && day <= 30)
|| (month == 5 && day >= 1 && day <= 31)
|| (month == 6 && day >= 1 && day <= 20);
System.out.println(isSpring);
}
}
我在eclipse上不断收到此错误
线程“main”中的异常java.lang.ArrayIndexOutOfBoundsException:0 在trollstartwo.main(trollstartwo.java:4)
答案 0 :(得分:1)
args [0] 是指String数组 args [] ,它是main方法的参数。
.... void main(String[] args) //this args array here
args [] 数组的值由用户在运行程序时提供。在运行程序时,您可能会在Eclipse中看到 主要方法参数 的选项。您必须在那里提供 args [0] 和 args [1] 的值。如果你不这样做,那么阵列 args [] 甚至不会被初始化,即它仍然是一个0空格的数组。因此,当程序试图访问args []的0和1位置的值时,它甚至找不到那些位置,因此在运行时抛出 ArrayIndexOutOfBounds 异常。
要避免这种情况,请在主方法参数框中提供值。假如你想提供&#39; 4&#39;月份和&#39; 5&#39;当天,在框中输入 {&#34; 4&#34;,&#34; 5&#34;} 。