正确例题:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in =new Scanner(System.in);
int b=0,c=0,d=0,sum=0,i;
double e=0,f=0;
int[] a=new int[12];
for(i=0;i<12;i++) {
//其中的12也可以用a.length来表示
a[i]=in.nextInt();
}
for(i=0;i<12;i++) {
//其中的12也可以用a.length来表示
System.out.println(a[i]);
}
}
}
错误例题:(运行会产生错误)
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in =new Scanner(System.in);
int b=0,c=0,d=0,sum=0,i;
double e=0,f=0;
int[] a=new int[12];
for(i=1;i<=12;i++) {
//其中的12也可以用a.length来表示
a[i]=in.nextInt();
//长度为12的一维数组不存在a[12],所以输出时会出错。
}
for(i=1;i<=12;i++) {
//其中的12也可以用a.length来表示
System.out.println(a[i]);//
}
}
}
错误例题的分析:因为要表示一维数组:所以的从0开始到11,长度为12,错误例题中虽然有12个数,但是它所表示的一维数组长度却不是为12,而是长度为13,不可混淆。我们要清楚长度为12的一维数组有a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11]长度为13的一维数组有a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12]