for(int i:a);定义的5个元素;调试报错溢出

来源:2-5 编程练习

慕函数2366974

2021-11-13 02:49:21

https://img.mukewang.com/climg/618eb699099f8ea015240901.jpg

相关代码:

	public static void main(String[] args) 
	{
		@SuppressWarnings("resource")
		Scanner sc=new Scanner(System.in);//创建键盘读取接口
		int[] a=new int[5];//定义一维数组和创建
		
		for(int i=0;i<a.length;i++) //数组从键盘获取元素值
		{
			System.out.println("请输入数组的第" +(i+1) +"个元素:");
			a[i]=sc.nextInt();
		}
		System.out.println("能被3整除的元素为:");
		for(int i:a)//for(int i=0;i<a.length;i++) 并找出能被3整除的元素
		{			
			if(a[i]%3==0)
			System.out.print(a[i] +"  ");
			问题描述:数组为啥会溢出
		}		
	}
写回答

1回答

好帮手慕阿园

2021-11-13

同学你好,在增强for循环中的i表示的是数组中的数据

https://img.mukewang.com/climg/618f260e090063a807320221.jpg

而此时如果数组中的数组有超过数组长度的数,比如a[6],此时就会出现数组越界异常

所以这里建议使用普通for循环

另外,建议同学下次反馈代码时选择代码语言

https://img.mukewang.com/climg/618f26d709bcadaf01470241.jpg

祝学习愉快~

0

0 学习 · 9886 问题

查看课程