集合--collections

一、collections概述

Collections和Arrays、Objects-一样,都是一种针对性的工具类,

Arrays是针对数组,Objects是针对Object,

而Colections则是针对集合的一种工具类,里面提供了大量的方便我们操作集合的方法:

//往集合中添加一些元素。
public static <T> boolean addAll(Collection<T> C, T... elements):
//打乱集合顺序。
public static void shuffle(List<?> list) :
//将集合中元素按照默认规则排序。
public static <T> void sort(List<T> list): 
//将集合中元素按照指定规则排序。
public static <T> void sort(List<T> list, Comparator<? super T>) :
//查找集合中另外-一个集合的位置。
public static int indexOfSubList(List<?> source,List<?> target): 
// 查找在集合中出现某个元素的次数。
public static int frequency(Collection<?> c,Object o):

二、演示

来进行Collections工具类的常用方法的演示

  • 转化成不可变集合的类别;
  • 同步安全类;
  • 查找和替换类;
  • 4排序类;
public class CollectionsDemo {public static void main(String[] args) {ArrayList<String> list = new ArrayList<String>();//addAllCollections.addAll(list, "Lucy","Kitty","Bob","Tom");System.out.println(list);//sortCollections.sort(list);System.out.println(list);//binarySearch//如果你要查找的元素不存在的话,那么返回的值不一定的负一System.out.println(Collections.binarySearch(list, "Kitty"));ArrayList<String> list1 = new ArrayList<String>();Collections.addAll(list1, "Lucy","Kitty","Kabi","Jery");//disjoint:如果不存在相同的,返回true,否则返回falseSystem.out.println(Collections.disjoint(list, list1));//转换成不可变列表List<String> unModifyList = Collections.unmodifiableList(list1);System.out.println(unModifyList);//不可变列表不能在进行操作
//		unModifyList.add("aaa");//fillCollections.fill(list1, "xxx");System.out.println(list1);//frequencySystem.out.println(Collections.frequency(list1, "xxx"));//shuffleCollections.shuffle(list);System.out.println(list);//indexOfSubListSystem.out.println(Collections.indexOfSubList(list, Collections.singletonList("Tom")));}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/11553.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ajax详细讲解

Ajax&#xff08;Asynchronous JavaScript And XML&#xff09;即异步 JavaScript 和 XML&#xff0c;是一组用于在网页上进行异步数据交换的 Web 开发技术&#xff0c;可以在不刷新整个页面的情况下向服务器发起请求并获取数据&#xff0c;然后将数据插入到网页中的某个位置。…

24考研数据结构-栈和队列的应用

目录 3.3.1栈在括号匹配中的应用流程图算法代码 3.3.2栈在表达式求值中的应用1. 中缀表达式 (需要界限符)2. 后缀表达式 (逆波兰表达式)中缀表达式转后缀表达式-手算重点&#xff1a;中缀表达式转后缀表达式-机算重点&#xff1a;后缀表达式的计算—机算 3.前缀表达式 (波兰表达…

杭电oj Simple Set Problem 双指针 尺取法 满注释版

&#x1f468;‍&#x1f3eb; 题目地址 输入 3 2 1 6 3 -7 7 10 4 9 -5 -9 2 8 5 4 3 3 8 2 10 8 1 -7 3 1 6 10 1 1 9输出 1 15 0使用快读&#xff0c;避免使用 Arrays.fill() 按需初始化 避免卡常 &#x1f351; 思路 &#x1f37a; AC code import java.io.*; import ja…

机器学习李宏毅学习笔记39

文章目录 前言一、大模型的发展趋势二、KNN LM总结 前言 大模型大资料 大模型的顿悟时刻 一、大模型的发展趋势 随数据量增加&#xff0c;模型可以从量变达到质变&#xff0c;从某一刻开始突然学会东西。 当成为大模型时&#xff0c;分数会从0,0突然变成100&#xff0c;完成“…

【Matplotlib 绘制折线图】

使用 Matplotlib 绘制折线图 在数据可视化中&#xff0c;折线图是一种常见的图表类型&#xff0c;用于展示随着变量的变化&#xff0c;某个指标的趋势或关系。Python 的 Matplotlib 库为我们提供了方便易用的功能来绘制折线图。 绘制折线图 下面的代码展示了如何使用 Matplo…

#systemverilog# 说说Systemverilog中《static》那些事儿(内存管理篇2)

一、C语言的内存分配 静态存储:在变量定义时就分配了固定的内存地址与内存大小并一直保持不变,直至整个程序结束;动态存储:由程序控制,运行时才分配内存和地址,且每次分配到的内存和地址不固定C语言主要分为:BSS、Data、Text、Heap(堆)、Stack(栈) 静态内存分配:BS…

基于Centos 7虚拟机的磁盘操作(添加磁盘、分区、格式分区、挂载)

目录 一、添加硬盘 二、查看新磁盘 三、磁盘分区 3.1新建分区 3.2 格式分区 3.3 挂载分区 3.4 永久挂载新分区 3.5 取消挂载分区 一、添加硬盘 1.在虚拟机处选择编辑虚拟机设置&#xff0c;然后选择添加 2.选择硬盘&#xff0c;然后选择下一步 3.默认即可&#xff0c;下一步…

【6】toLocaleString、toLocaleDateString、toLocaleTimeString等toLocale系列方法的使用及案例

一、介绍 在当今前端开发的领域里&#xff0c;快速、高效的项目构建工具以及使用最新技术栈是非常关键的。ViteVue3 组合为一体的项目实战示例专栏将带领你深入了解和掌握这一最新的前端开发工具和框架。 作为下一代前端构建工具&#xff0c;Vite 在开发中的启动速度和热重载…

C语言:动态内存管理

文章目录 一、动态内存函数1. malloc2. calloc3. realloc4. free 二、常见的错误1.malloc或calloc开辟的空间未检查2.越界访问3.对非malloc和calloc开辟的空间&#xff0c;用free释放4.对同一块动态内存多次释放5.用free释放动态内存的一部分 三、通讯录(动态版本改写)总结 一、…

uni-app:模态框的实现(弹窗实现)

效果图 代码 标签 <template><view><!-- 按钮用于触发模态框的显示 --><button click"showModal true">显示模态框</button><!-- 模态框组件 --><view class"modal" v-if"showModal"><view cla…

LINUX上操作redis 用shell7

LINUX上操作redis 用shell7 步骤1&#xff1a;连接到Linux服务器步骤2&#xff1a;安装和配置Redis步骤3&#xff1a;连接到Redis服务器步骤4&#xff1a;操作Redis数据步骤5&#xff1a;断开与Redis服务器的连接 步骤1&#xff1a;连接到Linux服务器 首先&#xff0c;需要使用…

Linux系统中软硬连接的区别、细节知识点和实现的指令

当你在Linux系统上使用命令行进行文件和目录管理时&#xff0c;你可能会遇到软连接和硬连接这两个概念。它们是创建文件和目录之间链接的一种方式。在本篇博客中&#xff0c;我们将详细讨论软连接和硬连接的区别、实现方式以及相关指令的使用。 文章目录 软链接(symbolic link)…

探索APP开发的新趋势:人工智能和大数据的力量

随着5G技术的不断发展&#xff0c;人工智能和大数据将会更加广泛的应用于我们生活和工作中&#xff0c;作为 APP开发公司&#xff0c;应该及时的对新技术进行研发&#xff0c;进而更好的为用户服务。目前 APP开发已经不是传统的软件开发了&#xff0c;而是向移动互联网转型&…

iPhone 开机停留在苹果logo画面(已解决)

一、问题 如下图&#xff0c;开不了机&#xff1a; 标题 二、根因 存储空间满了。 三、解决方法 方法一 用苹果数据线&#xff08;最好是原装&#xff09;连接Mac电脑&#xff0c;在装有 macOS Catalina 10.15 或更高版本的 Mac 上&#xff0c;打开“访达”。在装有 macOS…

六、代理模式

文章目录 一、代理模式1、代理模式的好处和缺点1.1 代理模式理解加深 一、代理模式 为什么要学习代理模式&#xff1f; 代理模式是Spring AOP 以及 Spring MVC 的底层&#xff01;&#xff01;并且还是 JAVA 的23种设计模式之一&#xff01;&#xff01; 代理模式的分类&#…

6 pygame快速入门|飞机大战经典项目大概介绍

文章目录 安装快速入门创建图形化窗口游戏的开始和退出坐标系和Rect创建游戏主窗口 图像绘制游戏循环和游戏时钟与事件捕捉动画的实现原理游戏循环游戏时钟事件 精灵和精灵组 安装 pip install pygame快速入门 创建图形化窗口 游戏的开始和退出 方法说明pygame.init()导入并…

opencv-27 阈值处理 cv2.threshold()

怎么理解阈值处理? 阈值处理&#xff08;Thresholding&#xff09;是一种常用的图像处理技术&#xff0c;在机器学习和计算机视觉中经常被用于二值化图像或二分类任务。它基于设定一个阈值来将像素值进行分类&#xff0c;将像素值大于或小于阈值的部分分为两个不同的类别&…

从Web2到Web3:区块链技术的未来前景

随着互联网的发展&#xff0c;Web1.0、Web2.0 和 Web3.0 成为了人们口中津津乐道的话题。那么&#xff0c;这三种网络时代究竟有什么区别呢&#xff1f; Web1.0 是一个只读的时代&#xff0c;那个时候&#xff0c;用户只能浏览网页&#xff0c;无法进行互动和创作。Web2.0 则是…

UIO:用户空间驱动2007

原文网址&#xff1a;https://lwn.net/Articles/232575 原文作者&#xff1a;corbet 原文时间&#xff1a;2007年5月2日 用户空间驱动这个概念已经有很长时间了&#xff0c;这一次有一个补丁版本已经提交到了Linux2.6.22&#xff0c;这个版本的补丁就是UIO。【因为用户空间驱…

FFMPEG用过的命令记录

转换输入的H264文件参数&#xff0c;其中 b&#xff1a;100k比特率 r&#xff1a;帧率 g&#xff1a;I帧间隔 profilte :编码档次high level:3 -x264opts “bframes0” 去除B帧&#xff0c;或者 -bf 0 -bsf:v “filter_unitsremove_types6” 过滤type为6的帧&#xff0c;既SEI帧…