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

求教哪里出错了??不要用别的方法啊

求教哪里出错了??不要用别的方法啊

pipi虾 2015-09-11 12:04:36
//目的实现数组的前三名输出package com.xs;import java.util.Arrays;public class Hi { public static void main(String[] args) {     int scores[]={89 , -23 , 64 , 91 , 119 , 52 , 73};//创建对象 Hi hello=new Hi();//调用方法 int nums[]=hello.sort(scores); for(int i=0;i<nums.length;i++)  System.out.println(nums[i]);}//定义方法 public int[] sort(int scores2[]){ Arrays.sort(scores2); int nums2[]=new int[3]; for(int i=scores2.length-1;i>=scores2.length-3;i--){ nums2[i]=scores2[i]; } return nums2; } }
查看完整描述

3 回答

已采纳
?
沐泽

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

int nums2[]=new int[3];

int j = 0;

for(int i=scores2.length-1;i>=scores2.length-3;i--){

nums2[j]=scores2[i];

j++;

}


查看完整回答
反对 回复 2015-09-12
?
沐泽

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

错了是你nums2就声明了3个元素,那里来的索引6,这里越界.

查看完整回答
反对 回复 2015-09-12
?
沐泽

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

错在这:

nums2[i]=scores2[i];//第一次循环,i是6,你nums2[6]=scores2[6];肯定错了,你nums声明的就3个元素,肯定越界.


查看完整回答
反对 回复 2015-09-12
  • 3 回答
  • 0 关注
  • 1374 浏览

添加回答

举报

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