谁能帮我检查一下一下一段代码,谢谢

来源:6-7 使用 Arrays 类操作 Java 中的数组

jerseyyu

2015-08-01 23:56


package com.imooc;

import java.util.Scanner;

import java.util.Arrays;

public class HelloWorld {

public static void main(String[] args){

Scanner input=new Scanner(System.in);

int L=input.nextInt();                       //输入数组长度

int[] array=new int[L];

  for(int i=0;i<=array.length;i++){

   array[i]=input.nextInt() ;              //初始化数组的每一个元素

  }

 System.out.println("数组:"+Arrays.toString(array));    //利用Arrays输出数组


}

}

不知为何,在输出整个数组之前一切正常,但是无法输出数组,似乎还停留在之前的循环结构里面,直至输入数字个数大于L,然后报错。


写回答 关注

2回答

  • 化龙贝
    2015-08-02 11:47:12
    已采纳

    把:  for(int i=0;i<=array.length;i++){

    改为:  for(int i=0;i<array.length;i++){

    --------------------------------------解释如下--------------------------------------------

    假设条件:数组长度为 10

    故:array.length = 10

    那么它的索引则为:0,1,2,3,4,5,6,7,8,9

    故:i的最大取值为 10

    故:array[10] 索引超出范围,即: ArrayIndexOutOfBoundsException

    --

    建议:下次提问时,贴出错误信息。代码使用编辑器左上角的代码语言功能


    jersey...

    非常感谢!

    2015-08-02 22:16:55

    共 1 条回复 >

  • lzl51113212
    2015-09-01 19:57:08

    数组长度问题。

    for里面多了一个=。

    在之前的练习中,你肯定没有仔细学,没有完全掌握,忽略掉这个细节了。

    jersey...

    yep,我以为java的for循环和c++一样

    2015-09-03 22:38:44

    共 1 条回复 >

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

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

1167334 学习 · 18589 问题

查看课程

相似问题