为了账号安全,请及时绑定邮箱和手机立即绑定

一直报错 不太懂

一直报错 不太懂

宝慕林9454223 2017-02-03 10:13:39
package com.who;public class SelectSort { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub // 创建一个数组,这个数组的元素是乱序的 int[] array = { 63, 4, 24, 1, 3, 15 }; // 创建类对象 SelectSort sorter = new SelectSort(); // 调用对象的排序方法 sorter.sort(array); } public void sort(int[] array) { for (int i = 1; i < array.length; i++) { int index = 0; for (int j = 1; j <= array.length - i; j++) { if (array[index] < array[j]) { index = j; } } int temp = array[array.length - i]; array[array.length - i] = array[index]; array[index] = temp; } ShowArray(array); } public void ShowArray(int[] array) { for (int i = 1; i <= array.length; i++) { System.out.print(array[i] + " "); } System.out.println(); }}
查看完整描述

4 回答

?
ziom

TA贡献948条经验 获得超1109个赞

ShowArray(int[] array)里的for循环会出现下标越界,楼上说的对,应该把循环条件改成 i < array.length;

查看完整回答
1 反对 回复 2017-02-03
?
宝慕林9454223

TA贡献2条经验 获得超0个赞

看到了 谢谢大家了
查看完整回答
反对 回复 2017-02-03
?
eq361

TA贡献7条经验 获得超1个赞


兄弟,遍历数组,下标从0开始

查看完整回答
反对 回复 2017-02-03
?
望远

TA贡献1017条经验 获得超1032个赞

报错是因为showarray方法里面数组下标越界,不能=array.length
查看完整回答
反对 回复 2017-02-03
  • 4 回答
  • 0 关注
  • 1605 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信