1.将String类对象通过toCharArray()方法转化为字符数组,因为数组各个位置均会初始化为0,然后遍历该字符数组得到结果。
2.public static void main(String[] args){
int[] scores = {1, 2, 3, 4, 5};
String l = Arrays.toString(scores);
//char list[] = new char[100];
char[] list = l.toCharArray();
int number = 0;
for(int i = 0; list[i] != 0; i++)
{
if(list[i] == ' ')
{
number++;
}
}
System.out.println(number);
}
3.这是数组越界的错误信息,表示数组list的下标在遍历过程中到了15(实际上的16),而在初始化时只申请了15个位置。
联系我后面的提示,得知for循环的终止判断出了问题,因这个字符数组的内存申请范围是精确的,后面没有多余的空间,也就不存在初始化为0的数组位置了。
你的类名和文件名不一样
你把文件名改为aa.java就可以了
java中定义文件名有说法的,不和C++一样你可以随便定义
还有就是导入包没.
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException
这句话的意思是MAIN主线程 出错
原因是 数组越界错误
int a[]=new int[5];
for(i=0;i<=5;i++)
a[i]=i;
a[5] = 5
数组是从0开始算的 所以最大只能取到a[4]
int a[]=new int[5];
//只有5个元素a[0]到a[4]!!
for(i=0;i<=5;i++)
a[i]=i;
a[5] = 5// 根本没有a[5],当然数组越界