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

java第一季最后一章节 ,方法中的返回值类型为什么不可以用int[]

java第一季最后一章节 ,方法中的返回值类型为什么不可以用int[]

谢兵 2016-03-06 16:45:36
package xunhuan;import java.util.Arrays;public class qiansanm {    //完成 main 方法    public static void main(String[] args) {       qiansanm hello=new qiansanm();        //定义有效前三名的变量       System.out.println("请输入前三名的学员成绩");        int[] scores={89,-23,64,91,119,52,73};        Arrays.sort(scores);        hello.nums(scores);      }    //定义方法完成成绩排序并输出前三名的功能    public int[] nums(int[] scores){         int one = 0;         for(int i=0; i<scores.length;i++){                             if(scores[i]<0||scores[i]>100){                continue;                }            one++;            if(one>=3){                System.out.println( scores[i]);            }           return score;        }    }   
查看完整描述

1 回答

?
一条小咸鱼

TA贡献457条经验 获得超255个赞

    public int[] nums(int[] scores) {
        int one = 0;
        for (int i = 0; i < scores.length; i++) {

            if (scores[i] < 0 || scores[i] > 100) {
                continue;
            }
            one++;
            if (one >= 3) {
                System.out.println(scores[i]);
            }
        }
        return scores;
    }

其实你这个程序逻辑有问题,你随意加一个0-100的数,就知道不对了,应该反向输出

这是我写的,你可以参考下

import java.util.Arrays;

public class HelloWorld {


    // 完成 main 方法

	public static void main(String[] args) {

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

		HelloWorld hello = new HelloWorld();

		hello.scoSortAndPrint(scores);


	}


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

	public void scoSortAndPrint(int[] score) {

		Arrays.sort(score);

		int count = 0;

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

		for (int i = score.length - 1; i >= 0 && count <3; i--) {

			if (score[i] <= 100 && score[i] >= 0) {

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

				count++;


			}

		}

	}

}


查看完整回答
反对 回复 2016-03-06
  • 1 回答
  • 0 关注
  • 1350 浏览

添加回答

举报

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