例题:随机生成一些数据,存储在ArrayList容器中,找到最大的一个数据输出。

方法一:直接调用Collections 类的sort()方法,Collections 类也是一个非常有用的类,位于 java.util 包中,提供的 sort() 方法可以对字符或数字列表进行排序。

 /**@Description: 随机生成一些数据,存储在ArrayList容器中,找到最大的一个数据输出。
     * @param:      无参
     * @return   int
     * @version v1.0
     * @author 李告
     * @date 2022/8/24 7:53
     */
    private static int randomNum() {
        List integers = new ArrayList();
//        定义随机数变量
        int num;
//        生成0-8随机数
        for (int i = 0; i < 8; i++) {
           num =  new Random().nextInt(8);
           integers.add(num);
        }
//调用Collectios的sort()进行排序)
        Collectios.sort(integers)
        System.out.println(integers);

方法二:利用ArrayList的sort()实现,即比较器原理实现(Compartor<>)

具体代码:

/**@Description: 生成随机数
     * @param:      无参
     * @return   int
     * @version v1.0
     * @author 李告
     * @date 2022/8/24 7:53
     */
    private static int randomNum() {
        List integers = new ArrayList();
//        定义随机数变量
        int num;
//        生成0-8随机数
        for (int i = 0; i < 8; i++) {
           num =  new Random().nextInt(8);
           integers.add(num);
        }

        /*    
            ArrayList的sort方法(即实现比较器)
         */
        integers.sort(new Comparator<Integer>() {
            @Override
            public int compare(Integer o1, Integer o2) {
                return o1-o2;  //降序
//                return o2-o1;  //升序
            }
        });

方法三:利用map的转换方法,将ArrayList对象转换成普通数组的形式,再用Arrays.sort().

具体代码:

    /**@Description: 
     * @param:      无参
     * @return   int
     * @version v1.0
     * @author 李告
     * @date 2022/8/24 7:53
     */
    private static int randomNum() {
        List integers = new ArrayList();
//        定义随机数变量
        int num;
//        定义int数值供转换排序
        int[] num01 ={};
//        生成0-8随机数
        for (int i = 0; i < 8; i++) {
           num =  new Random().nextInt(8);
           integers.add(num);
        }
        System.out.println(integers);
        /*
            转换方法
         */
        //转换成int[]
        int[] arr = integers.stream().mapToInt(k-> (int) k).toArray();
        Arrays.sort(arr);

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐