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

我这种写法相比答案那个更好,可以解释一下吗

import java.util.Arrays;

public class HelloWorld {

    

    //完成 main 方法

    public static void main(String[] args) {

        int[] scores={89,-23,64,91,119,52,73};

        System.out.println("考试成绩的前三名位:");

        HelloWord hello = new HelloWord();

        hello.sort(scores);

    }

    

    //定义方法完成成绩排序并输出前三名的功能

    public void sort(int[] arr){

        Arrays.sort(arr);

        int num = 0;

        int count = 0;

        for(int i = arr.length-1;i>=0;i--){

            if(count<3){

                num = arr[i];

                System.out.println(num);

                count++;

            }

        }

    }


正在回答

2 回答

import java.util.Arrays;

public class HelloWorld {

public void sortArrays(int[] nums){

int count=0;

Arrays.sort(nums);

for(int i=(nums.length)-1;i>=0;i--){

if(nums[i]>100||nums[i]<0) continue;

System.out.println(nums[i]);

count++;

if(count==3) break;

}

}

public static void main(String[] args){

int[] nums={89,-23,64,91,119,52,73};

HelloWorld helloworld=new  HelloWorld();

helloworld.sortArrays(nums);

}

}


0 回复 有任何疑惑可以回复我~

这个方法并没有判断成绩的有效性所以运行结果是119,91,81是不对的

0 回复 有任何疑惑可以回复我~
#1

大尾鲈鳗 提问者

有效性是什么意思,他的要求不是排列出前三名吗
2017-03-10 回复 有任何疑惑可以回复我~
#2

慕前端7469816 回复 大尾鲈鳗 提问者

他要求是列出在0-100的有效分数的前三名
2017-03-11 回复 有任何疑惑可以回复我~
#3

大尾鲈鳗 提问者 回复 慕前端7469816

啊!谢谢没认真看题
2017-03-12 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

我这种写法相比答案那个更好,可以解释一下吗

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信