集合框架(二)前置知识

可变参数:就是一种特殊形参,定义在方法,构造器的形参列表里,格式是:"数据类型...参数名称"

可变参数的特点和好处

特点:可以不传数据给它,可以传一个或多个数据给它,也可以传一个数组给它

好处:常常用来灵活的接受数据

可变参数的注意事项:

①可变参数在方法内部就是一个数组

②一个形参列表中可变参数只能有一个

③可变参数必须放在形参列表的最后面

Collections

*是一个用来操作集合的工具类

Collections提供的常用静态方法

|--------------------------------------------------------------------------|-------------------------------|
| 方法名称 | 说明 |
| public static <T>boolean addAll (Collection<?super T>c,T...elements) | 给集合批量添加元素 |
| public static void shuffle(List<T>list) | 打乱List集合中的元素顺序 |
| public static <T>void sort(List<T>list) | 对List集合中的元素进行升序排序 |
| public static <T>void sort(List<T>list,comparator<?super T>c) | 对List集合中元素,按照比较器对象指定的规则进行升序排序 |

复制代码
import java.util.*;

public class Collections1 {
    //目标:掌握Collections集合工具类的使用
    public static void main(String[] args) {
//public static <T>boolean addAll (Collection<?super T>c,T...elements)	给集合批量添加元素
        List<String> names=new ArrayList<>();
        Collections.addAll(names,"长相思","汶小六","涂山璟","相柳");
        System.out.println(names);
// public static void shuffle(List<T>list)	打乱List集合中的元素顺序
        Collections.shuffle(names);
        System.out.println(names);
// public static <T>void sort(List<T>list)	对List集合中的元素进行升序排序
        List<Integer>list=new ArrayList<>();
       Collections.addAll(list,4,3,6,8);
        Collections.sort(list);
        System.out.println(list);
// public static <T>void sort(List<T>list,comparator<?super T>c)	对List集合中元素,按照比较器对象指定的规则进行升序排序

    }
}

Collections.sort(movies, new Comparator<Movie>() {
                @Override
                public int compare(Movie o1, Movie o2) {
                    return Double.compare(o1.getScore(),o2.getScore());
                }
            });
相关推荐
攻城狮在此2 小时前
SecureCRT与MobaXterm详细对比:哪个更强、谁更适合你?
windows
love530love3 小时前
冷门干货!llama.cpp 自带原生网页聊天 UI,无需第三方依赖一键开启
人工智能·windows·ui·llama·flash-attention·switch-cuda
gordon~94 小时前
Windows 11 wsl 中安装的Ubuntu-24.04 中装docker
windows·ubuntu·docker
历程里程碑5 小时前
Protobuf 环境搭建:Windows 与 Linux 系统安装教程
linux·运维·数据结构·windows·线性代数·算法·矩阵
tobebetter95276 小时前
WSL2 + Windows + remote Chrome CDP openclaw 浏览器自动化
chrome·windows·自动化
桌面运维家7 小时前
解决Windows 10打印机脱机:端口、驱动、网络故障排除
windows·stm32·单片机
liwulin05068 小时前
【ROS2】【ESP32S3纯透传方案】ESP32S3+WINDOWS+VMware+ROS2+YDLIDA X导航完整落地方案
windows·stm32·单片机
AxureMost8 小时前
MTools 0.0.12-beta 全能工具箱
windows·开源软件
beyond阿亮9 小时前
OpenClaw在Windows上接入飞书完整指南
人工智能·windows·ai·openclaw
大强同学11 小时前
MFCMouseEffect 鼠标可视化特效设置与操作教程
windows·鼠标手势