注册 登录
编程论坛 JAVA论坛

数组问题,调试没问题,但输入数字后,下面出现了一串英文

牧城雪 发布于 2018-04-14 10:28, 1560 次点击
    int [] a=new int [5];
    public static void main(String[] args) {
        ZuoYe p1=new ZuoYe();
        p1.shuru();
    }
    public int [] shuru() {
        System.out.println("输入5个数字:");
        Scanner in = new Scanner(System.in);
        int i;
        for(i=0;i<5;i++) {
            a[i]=in.nextInt();
        }
        System.out.print("输入的数为:"+a[i]);
        return (a);
    }
只有本站会员才能查看附件,请 登录


[此贴子已经被作者于2018-4-14 10:34编辑过]

2 回复
#2
疯狂的小a2018-04-14 11:22
程序代码:
int [] a=new int [5];
    public static void main(String[] args) {
        ZuoYe p1=new ZuoYe();
        p1.shuru();
    }
    public int [] shuru() {
        System.out.println("输入5个数字:");
        Scanner in = new Scanner(System.in);
        int i;
        for(i=0;i<5;i++) {
            a[i]=in.nextInt();
             System.out.print("输入的数为:"+a[i]);
        }
      
        return (a);
    }
#3
a3510218172018-04-26 01:53
报异常,是因为这段代码位置不对 System.out.print("输入的数为:"+a[i]);
从功能上看,这个代应该放在for循环代码段里。
从逻辑上看,输出语句里含有数组元素a[i],当i=5时,跳出for循环,执行输出语句代码的时候,定义长度为5的数组是没有a[5]这个元素的,只有a[0]~~a[4],所以控制台才会报异常
1