Java数组索引超出界限

前端之家收集整理的这篇文章主要介绍了Java数组索引超出界限前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚在 Arrays中启动了一个单元,我给了一些示例代码来查看这个非常基本的Arrays入门程序.基本上我所要做的就是制作两个阵列,询问一周中那天的温度.收集信息后,它会简单地将其吐出一个像这样的字符串.

周一的气温是16度

星期二的气温是18度

…等

根据我从我收到的示例代码中理解的内容,我正在做正确的事情.但是当试图运行该程序时(在Netbeans中)我得到了这个错误.

“Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 7
at temperatures.Temperatures.main(Temperatures.java:27)
Java Result: 1″

这是代码

public static void main(String[] args)throws IOException {
        // TODO code application logic here
        BufferedReader br = new BufferedReader (new InputStreamReader (System.in));
        String temp[]= new String[7];
        String day[]= new String[7];
        day[1]=("Monday");
        day[2]=("Tuesday");
        day[3]=("Wednesday");
        day[4]=("Thursday");
        day[5]=("Friday");
        day[6]=("Saturday");
        day[7]=("Sunday");
        for (int i=0; i <7; i++){
            System.out.println("Please enter the temperature for" + day[i]);
            temp[i]=br.readLine();
        }
        for (int i=0; i <7; i++){
        System.out.println("The high temperature on " + day[i]+ " was "+ temp[i]);
        }
    }
}

解决方法

Arrays begin at zero(< - 这是一篇解释原因的文章链接).因此,将您的第一个值指定为day [1] =(“Monday”);是问题,它应该是day [0] =(“Monday”);希望有所帮助

猜你在找的Java相关文章