输入n,随机生成n个整数,数的取值范围为0~100。将生成的n个数从大到小排列后输出(n值小于20)。

/*
 * 题目描述
输入n,随机生成n个整数,数的取值范围为0~100。将生成的n个数从大到小排列后输出(n值小于20)。
 输入描述
输入1到20之间的整数
 输出描述
空格分隔的整数数列
 输入样例
4
 输出样例
21 18 16 10
 */

package exam2;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
import java.util.Scanner;

/**
 *
 * @author Administrator
 */
public class Test3 {
    int randomInt;
    List date  = new ArrayList();
    List sortDate  = new ArrayList();

    public List getDate() {
        return date;
    }

    public void setDate(int min,int max,int n) {
        List d  = new ArrayList();
        for(int i=0;i<n;i++){
            setRandomInt(min,max);
            d.add(getRandomInt());
        }
        this.date = d;
    }

     public void setSortDate(List<String> sortDate) {
         Collections.sort(date);
        this.sortDate = sortDate;
    }

     public List<String> getSortDate() {
        return sortDate;
    }

    public int getRandomInt() {
        return randomInt;
    }

    public void setRandomInt(int min,int max) {
        int randomInt;
        Random ran = new Random();
        randomInt=ran.nextInt(max)+min;
        this.randomInt = randomInt;
    }

    public void print(List date){
        for(int i=0;i<date.size();i++)
        System.out.print(date.get(i)+" ");
    }
    public static void main(String[] args) {
        Test3 test = new Test3();
        Scanner sc= new Scanner(System.in);
        int n=sc.nextInt();
        test.setDate(0, 100, n);
        test.setSortDate(test.getDate());
        test.print(test.getSortDate());
    }

}

你可能感兴趣的:(java)