public class ArrayTest{
public static void main(String args[])
{
int i;
int a[] = new int[5];
for(i = 0;i < a.length;i++)
{
a[i] = i;
System.out.println("a["+i+"]="+a[i]);
}
}
}
public static void main(String args[])
{
int i;
int a[] = new int[5];
for(i = 0;i < a.length;i++)
{
a[i] = i;
System.out.println("a["+i+"]="+a[i]);
}
}
}
然后System.out.println("a["+i+"]="+a[i]);就造成数组越界
因为是没有a[5]这个值的
不知道是故意写成这样的还是初学?
建议改成:
public class ArrayTest{
public static void main(String args[])
{
//int i;
int a[] = new int[5];
for(int i = 0;i < 5;i++)//for循环有多条语句,要用大括号括起来
{
a[i] = i;
System.out.println("a["+i+"]="+a[i]);
}
}
}
public class ArrayTest{
public static void main(String args[])
{
int i;
int a[] = new int[5];
for(i = 0;i < 5;i++)
a[i] = i;
System.out.println("a["+i+"]="+a[i]);
}
}
请说出为什麽这样是错误的?