下面这个为什么会运行失败,也出来答案了

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

weixin_慕仔5384704

2019-02-01 22:15

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]);

}

}

}



运行失败

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

at HelloWorld.main(HelloWorld.java:11)

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

sports

game

movie



写回答 关注

6回答

  • 我敲可爱噢
    2019-02-01 23:20:10
    已采纳

    数组越界,把等于号去掉就好了

    我敲可爱噢 回复weixin...

    对的,数组是0.1.2.3开始,你有个等于号的话就是4个,但你的数组内容只有三个

    2019-02-02 18:19:52

    共 2 条回复 >

  • 慕仔1238278
    2019-02-13 17:11:54

    因为数组的下表是从0开始的,所以在for循环时,如果循环中的变量是从0开始的,要小于该数组的length

  • 慕前端8136698
    2019-02-08 13:41:06

     String[] hobbys = { "sports", "game", "movie" };
     
      
     
     // 使用循环遍历数组中的元素
     for(int i=0;i<=hobbys.length-1;i++)
     {
       System.out.println(hobbys[i]);
     }
      

  • 慕哥3872218
    2019-02-02 00:51:01

    hobbys.length为3,下标0代表数组中第一个元素,下标3代表数组中第四个元素,这个数组中只有三个元素

  • 我敲可爱噢
    2019-02-01 23:18:07

    把等于号去掉

  • 我敲可爱噢
    2019-02-01 23:13:11

    输出那里把双引号和+号去掉试试

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

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

1165172 学习 · 17581 问题

查看课程

相似问题