有结果提示,却告知代码异常。如何解决

来源:6-5 使用循环操作 Java 中的数组

qq_溪边的柳树db_0

2017-09-26 21:37

public class HelloWorld {

    public static void main(String[] args) {

// 定义一个长度为 3 的字符串数组,并赋值初始值

String[] hobbys = { "sports", "game", "movie" };

System.out.println("循环输出数组中元素的值:");

// 使用循环遍历数组中的元素

int i=0;

   do{

       System.out.println(hobbys[i]);

       i++;

   }

   while((i-1)<hobbys.length);

}

}

显示结果

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3

at HelloWorld.main(HelloWorld.java:11)

循环输出数组中元素的值:

sports

game

movie


写回答 关注

3回答

  • 慕粉3291149
    2017-09-30 12:59:39
    已采纳

    数组越界异常,很明显你的while里面的判断条件有问题,

    当i=3时,满足while条件,执行循环体,但是hobbys[3]已经超过了数组的长度

    qq_溪边的...

    谢谢✔️

    2017-09-30 13:49:01

    共 1 条回复 >

  • 慕神8225625
    2017-10-15 21:29:22

    循环条件超过了数组长度


  • SilenceVista
    2017-09-26 22:00:55
    public class HelloWorld {
        public static void main(String[] args) {
    		
    		// 定义一个长度为 3 的字符串数组,并赋值初始值
    		String[] hobbys = { "sports", "game", "movie" };
    		System.out.println("循环输出数组中元素的值:");
    		
    		// 使用循环遍历数组中的元素
    		
    		for(int i=0;i<hobbys.length;i++)
    		{
    		    System.out.println(hobbys[i]);
    		}
    	}
    }
    //你的i值会越界


Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1167160 学习 · 18062 问题

查看课程

相似问题