最新回答 / 蜗牛_靖赜居士
当 i = a.length -1 的时候,a[i + 1] 也就是 a[a.length] 是没有值的,直接超出内存范围了所以报错。另外,你这个排序算法不对,你这个不是冒泡排序,你这个只是如果两个数比一下,小的放到前面,大的放到后面,冒泡排序是两层循环。
2017-10-19
最新回答 / 悟酱起飞
a[i]<a[i+1]这一行,你这个外面的for循环是i < a.length;那你这个a[i+1]就取不到了,所以会报错。就算解决了报错,你这个也不能满足题目的要求,你可以走一遍:89和0,89胜出,a数组第一个是89,此时开始判断0和64了,a数组第二个就是64了,然后是64和91比较,第三个就是91了,有没有发现哪里不对?
2017-10-19
最新回答 / karrb
数组越界,比如7个元素的数组arr。arr[7]是数组角标越界的,只有arr[0]到arr[6];你应该这么写反向循环, for(int i=scores.length - 1;i>=0;i--)
2017-10-18