Collections工具类及其案例

2024-06-10 19:12
文章标签 工具 案例 collections

本文主要是介绍Collections工具类及其案例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

package exercise;public class Demo1 {public static void main(String[] args) {//可变参数//方法形参的个数是可以发生变化的//格式:属性类型...名字//int...argsint sum = getSum(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);System.out.println(sum);}//底层:可变参数底层就是一个数组public static int getSum(int... number) {int sum = 0;for (int i : number) {sum += i;}return sum;}
}

细节:
1.在方法的形参中最多只能写一个可变参数
2.在方法的形参中,如果除了可变参数以外,还有其他的形参,那么可变参数要写在最后


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

package exercise;import java.util.ArrayList;
import java.util.Collections;
import java.util.Random;public class Demo3 {public static void main(String[] args) {ArrayList<String> list = new ArrayList<>();Collections.addAll(list, "张三", "李四", "王五");/*方法一:Random r = new Random();int i = r.nextInt(list.size());System.out.println(list.get(i));*///方法二:Collections.shuffle(list);String s = list.get(0);System.out.println(s);}
}

在这里插入图片描述

package exercise;import java.util.ArrayList;
import java.util.Collections;public class Demo4 {public static void main(String[] args) {/*1.创建一个整数数组(1:男生  0:女生),用来判断概率2.分别用两个集合来存储男生和女生3.将上述集合打乱4.用整数数组得到的结果来输出  男生\女集合打乱后的第0个元素*/ArrayList<Integer> list = new ArrayList<>();Collections.addAll(list, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0);Collections.shuffle(list);System.out.println(list.get(0));ArrayList<String> boyList = new ArrayList<>();ArrayList<String> girlList = new ArrayList<>();Collections.addAll(boyList, "男1", "男2", "男3");Collections.addAll(girlList, "女1", "女2", "女3");Collections.shuffle(boyList);Collections.shuffle(girlList);if (list.get(0) == 1) {System.out.println(boyList.get(0));} else {System.out.println(girlList.get(0));}}
}

在这里插入图片描述
shift+F6:批量改名

package exercise;import java.util.ArrayList;
import java.util.Collections;
import java.util.List;public class Demo5 {public static void main(String[] args) {ArrayList<String> list1 = new ArrayList<>();Collections.addAll(list1, "张三", "李四", "王五", "赵六");ArrayList<String> list2 = new ArrayList<>();for (int i = 0; i < 10; i++) {System.out.println("============第" + i + "轮================");Collections.shuffle(list1);int count = list1.size();for (int j = 0; j < count; j++) {String remove = list1.remove(0);list2.add(remove);System.out.println(remove);}list1.addAll(list2);list2.clear();}}
}

在这里插入图片描述

package exercise;import java.util.*;public class Demo6 {public static void main(String[] args) {HashMap<String, ArrayList<String>> hm = new HashMap<>();ArrayList<String> list1 = new ArrayList<>();Collections.addAll(list1, "桂林", "柳州", "南宁");ArrayList<String> list2 = new ArrayList<>();Collections.addAll(list2, "苏州", "无锡", "南京");ArrayList<String> list3 = new ArrayList<>();Collections.addAll(list3, "哈尔滨", "大庆", "齐齐哈尔");hm.put("广西", list1);hm.put("江苏", list2);hm.put("黑龙江", list3);Set<Map.Entry<String, ArrayList<String>>> entries = hm.entrySet();for (Map.Entry<String, ArrayList<String>> entry : entries) {String key = entry.getKey();ArrayList<String> value = entry.getValue();StringJoiner sj = new StringJoiner(",", "", "");for (String s : value) {sj.add(s);}System.out.println(key + " = " + sj);}}
}

这篇关于Collections工具类及其案例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1049025

相关文章

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

Java 中的 equals 和 hashCode 方法关系与正确重写实践案例

《Java中的equals和hashCode方法关系与正确重写实践案例》在Java中,equals和hashCode方法是Object类的核心方法,广泛用于对象比较和哈希集合(如HashMa... 目录一、背景与需求分析1.1 equals 和 hashCode 的背景1.2 需求分析1.3 技术挑战1.4

Java中实现对象的拷贝案例讲解

《Java中实现对象的拷贝案例讲解》Java对象拷贝分为浅拷贝(复制值及引用地址)和深拷贝(递归复制所有引用对象),常用方法包括Object.clone()、序列化及JSON转换,需处理循环引用问题,... 目录对象的拷贝简介浅拷贝和深拷贝浅拷贝深拷贝深拷贝和循环引用总结对象的拷贝简介对象的拷贝,把一个

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求:

Java中最全最基础的IO流概述和简介案例分析

《Java中最全最基础的IO流概述和简介案例分析》JavaIO流用于程序与外部设备的数据交互,分为字节流(InputStream/OutputStream)和字符流(Reader/Writer),处理... 目录IO流简介IO是什么应用场景IO流的分类流的超类类型字节文件流应用简介核心API文件输出流应用文

使用python制作一款文件粉碎工具

《使用python制作一款文件粉碎工具》这篇文章主要为大家详细介绍了如何使用python制作一款文件粉碎工具,能够有效粉碎密码文件和机密Excel表格等,感兴趣的小伙伴可以了解一下... 文件粉碎工具:适用于粉碎密码文件和机密的escel表格等等,主要作用就是防止 别人用数据恢复大师把你刚删除的机密的文件恢

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

深度解析Java @Serial 注解及常见错误案例

《深度解析Java@Serial注解及常见错误案例》Java14引入@Serial注解,用于编译时校验序列化成员,替代传统方式解决运行时错误,适用于Serializable类的方法/字段,需注意签... 目录Java @Serial 注解深度解析1. 注解本质2. 核心作用(1) 主要用途(2) 适用位置3

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模