定排序数的个数,并输入对应数据,然后将数据从大到小排序后输出。

定排序数的个数,并输入对应数据,然后将数据从大到小排序后输出。

这样子的?


public static void main(String[] args) {
        List<Integer> list = new ArrayList<Integer>();
        Scanner scanner = new Scanner(System.in);
        for (int i = 0; i < 5; i++) {
            System.out.println("请输入第:"+(i+1)+"个数");
            list.add(scanner.nextInt());
        }
        System.out.println(list);
        list.sort((a1,a2) ->{
            if (a1 > a2) {
                return -1;
            } else {
                return 1;
            }
        });
        System.out.println(list);
    }

img

我觉得学习阶段可以少直接调用系统的api,写个简单的排序也是能加深学习的,例如最常见的冒泡排序

import java.util.Scanner;

/**
 * TODO
 *
 * @author victor
 * @version 1.0
 * @date 2022/04/13 15:32
 */
public class Test
{
    public static void main(String[] args)
    {
        Test test = new Test();
        Scanner input = new Scanner(System.in);

        System.out.print("输入排序数字的总个数:");
        int num = input.nextInt();
        int[] arrs = new int[num];

        for (int i = 0; i < num; i++)
        {
            System.out.print("输入一个数字:");
            arrs[i] = input.nextInt();
        }

        System.out.println("排序前的数字顺序:");
        for (int i : arrs)
        {
            System.out.print(i + "  ");
        }
        System.out.println();

        // 调用排序方法
        test.bubbleSort(arrs);

        System.out.println("排序后的数字顺序:");
        for (int i : arrs)
        {
            System.out.print(i + "  ");
        }
    }

    /**
     * 冒泡排序
     *
     * @param arrs
     * @return
     */
    public int[] bubbleSort(int[] arrs)
    {
        for (int i = 1; i < arrs.length; i++)
        {
            boolean flag = true;
            for (int j = 0; j < arrs.length - 1; j++)
            {
                if (arrs[j] > arrs[j + 1])
                {
                    flag = false;
                    int tmp = arrs[j];
                    arrs[j] = arrs[j + 1];
                    arrs[j + 1] = tmp;
                }
            }
            if (flag)
            {
                break;
            }
        }
        return arrs;
    }
}