憋着一泡屎写出来的,花了一个小时,把我痛苦的呀!参考代码

来源:7-1 编程练习

幕布斯1272103

2018-09-28 14:33

import java.util.Arrays;

public class HelloWorld {

    

    //完成 main 方法

    public static void main(String[] args) {

        HelloWorld hello = new HelloWorld();

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

        hello.scoreArray(arrays);

        

        

        

    }

    

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

    

    public int[] scoreArray(int[] arrays){

        

        Arrays.sort(arrays);

        int numb = 1;

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

            if(arrays[i]<0){

                continue;

            }

            if(arrays[i]>100){

                continue;

            }

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

            numb++;

            if(numb>3){

                break;

            }

        }

        return arrays;

    }


}


写回答 关注

5回答

  • 慕尼黑0191331
    2018-10-07 01:05:54

    可以用楼上的void 不用返回值

  • 慕尼黑0191331
    2018-10-07 01:05:13

    这样的话main里边调用的结果为数组,hello.scoreArray(arrays)这个为数组,还需要输出数组或者逐个赋值

    例如:

    int num1=hello.scoreArray(arrays)[0];

    int num2=hello.scoreArray(arrays)[1];

    int num3=hello.scoreArray(arrays)[2];

    然后输出这三个变量

  • 慕尼黑0191331
    2018-10-07 00:58:44

    scoreArray方法里再创建一个数组,把需要输出的数值赋值给新的数组,然后返回值为新的数组

    numb初始值改为0

    例如:

     public int[] scoreArray(int[] arrays){

            

            Arrays.sort(arrays);

            //int numb = 1;

            int numb=0;      //初始值为0,在0的基础上做3次自加加运算,最后结果为3

            int [] arr=new int[3];     //新的数组,因为要输出前3名,所以长度为3

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

                if(arrays[i]<0){

                    continue;

                }

                if(arrays[i]>100){

                    continue;

                }

                //可以合为一句

                if(arrays[i]<0||arrays[i]>100){

                    continue;

                 }

                System.out.println(arrays[i]);  //这行可以不要

                numb++;

                if(numb>3){

                    break;

                }

               arr[numb-1]=arrays[i];  //这里开始逐个赋值,此循环中numb的值为1、2、3,

            }

            return arrays;

            return arr;   //这里返回值为数组arr

        }


  • 梦云云梦
    2018-09-29 11:59:59

    不用返回了


  • 梦云云梦
    2018-09-29 11:58:21

    import java.util.Arrays;

    //导入功能包;

    public class HelloWorld 

    {

        

        //完成 main 方法

        public static void main(String[] args)

        {

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

        HelloWorld hello = new HelloWorld();   

        hello.function(scores);    

        }

        

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

        

        public void function(int[] scores)

        {

            int count=0;

            Arrays.sort(scores);

           // int marks[3] ;

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

            {

                if(scores[i]<0|scores[i]>100){continue; }

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

                count++;

                if(count>=3){break;}

                

            }

            

        }

    }


Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165793 学习 · 17588 问题

查看课程

相似问题