java集合详解

合集下载

java中集合的概念

java中集合的概念

java中集合的概念Java中的集合是一种非常重要的数据结构,用于存储和操作一组对象。

集合框架包含了许多类和接口,可以方便地进行数据的存储、查询、排序等操作,使得Java程序开发变得更加高效和便捷。

在本文中,我们将逐步介绍Java中集合的概念和用法。

一、集合框架概述Java中的集合框架是一个包含了多个接口和类的层次结构,用于表示和操作一组对象。

集合框架包含了通用的集合接口和实现,以及特定的集合类和接口,如List、Set、Map等。

集合框架的接口和类都是通过泛型实现的,可以存储任意类型的对象,比如基本类型和自定义类型的对象。

二、集合框架的接口Java中的集合框架包含了多个接口,其中包括:1. Collection:代表一组对象的集合,是其他集合接口的父接口。

它定义了一些通用的方法,如添加、删除、迭代等。

2. List:代表有序的集合,其中每个元素都有一个对应的索引。

List允许重复元素出现,并且可以通过索引访问、添加、删除元素。

3. Set:代表无序的集合,其中每个元素都是唯一的。

Set不允许重复的元素出现,可以用来去重。

4. Map:代表一组键值对的集合,其中每个键都是唯一的。

Map 允许多个值对应同一个键,可以用来快速查找和存储数据。

三、集合类的实现Java中的集合类可以通过实现集合接口来实现。

如ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap等都是集合类的实现,我们可以通过这些集合类来方便地实现对一组对象的操作。

例如:1. 使用ArrayList来实现List接口,可以进行元素的添加、删除、查询等操作:List<String> list = new ArrayList<>();list.add("Alice");list.add("Bob");System.out.println(list.get(1));2. 使用HashSet来实现Set接口,可以去重并存储元素:Set<Integer> set = new HashSet<>();set.add(1);set.add(2);set.add(2);System.out.println(set.size());3. 使用HashMap来实现Map接口,可以快速查找并存储数据:Map<String, Integer> hashMap = new HashMap<>(); hashMap.put("Alice", 12);hashMap.put("Bob", 18);System.out.println(hashMap.get("Bob"));四、集合的迭代Java中的集合类都实现了Iterable接口,因此可以使用迭代器来访问集合中的元素。

java有序集合用法

java有序集合用法

java有序集合用法Java提供了几种有序集合的类,包括ArrayList、LinkedList、TreeSet和LinkedHashSet。

这些集合类都是Java集合框架的一部分,提供了不同的有序存储和操作元素的方式。

下面将详细介绍每个类的用法以及它们的优缺点。

1. ArrayList:ArrayList是基于数组实现的,提供了随机访问元素的能力。

它可以动态增长和缩小,内部实现了自动扩容机制。

在需要频繁查找和访问元素的场景下,ArrayList是首选。

以下是ArrayList的用法示例:```javaArrayList<String> list = new ArrayList<>(;list.add("A");list.add("B");list.add("C");System.out.println(list); // 输出: [A, B, C]list.remove(0);System.out.println(list); // 输出: [B, C]```2. LinkedList:LinkedList是基于链表实现的,提供了高效的插入和删除操作。

在需要频繁插入和删除元素的场景下,LinkedList是首选。

以下是LinkedList的用法示例:```javaLinkedList<String> list = new LinkedList<>(;list.add("A");list.add("B");list.add("C");System.out.println(list); // 输出: [A, B, C]list.removeFirst(;System.out.println(list); // 输出: [B, C]```3. TreeSet:TreeSet是基于红黑树实现的,提供了自然排序和自定义排序两种方式对元素进行排序。

java集合的定义

java集合的定义

java集合的定义1. Java集合是一种用于存储和操作一组对象的数据结构。

它提供了一种更高级别的抽象,可以方便地进行添加、删除、查找和遍历操作。

集合可以存储多个对象,并且可以根据需要动态调整大小。

2. Java集合框架是Java编程语言提供的一组接口、类和算法,用于实现各种集合类型。

它包括了List、Set、Queue和Map等常用集合接口,以及它们的具体实现类。

集合框架提供了一种标准化的方式来处理集合,使得开发人员可以更加方便地使用和操作集合。

3. Java集合框架中的每个集合都是通过特定的接口来定义的。

例如,List接口代表了一个有序的集合,可以包含重复的元素。

Set接口代表了一个无序的集合,不允许包含重复的元素。

Queue接口代表了一个先进先出的队列,可以用于实现任务调度和事件处理等场景。

Map接口代表了一组键值对的映射,可以通过键来查找对应的值。

4. 在集合框架中,每个具体的集合类都实现了相应的接口,并提供了一套通用的方法来操作集合。

例如,ArrayList是List接口的一个实现类,它使用数组来存储元素,并提供了一系列方法来添加、删除、查找和遍历列表中的元素。

HashSet是Set接口的一个实现类,它使用哈希表来存储元素,并提供了一套方法来添加、删除和查找集合中的元素。

5. Java集合框架还提供了一些算法和工具类,可以用于对集合进行排序、查找和操作等操作。

例如,Collections类提供了一系列静态方法,可以对集合进行排序、查找和复制等操作。

Arrays类提供了一系列静态方法,可以对数组进行排序、查找和复制等操作。

这些算法和工具类可以大大简化集合的处理过程,并提高开发效率。

总结:Java集合是一种用于存储和操作一组对象的数据结构,它提供了一种更高级别的抽象,可以方便地进行添加、删除、查找和遍历操作。

Java集合框架是Java编程语言提供的一组接口、类和算法,用于实现各种集合类型,并提供了一种标准化的方式来处理集合。

java集合

java集合

比较指定的对象与列表是否相等。 E get(int index)
返回列表中指定位置的元素。
int indexOf(Object o)
返回列表中首次出现指定元素的索引,如果列表不包含此 元素,则返回 -1。
Iterator iterator()
<E>
返回以正确顺序在列表的元素上进行迭代的迭代器。
int lastIndexOf(Object o)
List接口和LinkedList类 3-3
• 第二步:具体实现
public clas1s、Fir添stL加eve头lTit条leD、B3以{ 及最末条新闻标题 public static void main(String[] args) { FirstL2ev、elT获itle取car头= n条ew、Fir以stL及eve最lTit末le(1条, "汽新车闻", "标管理题员", new Date()); FirstLevelTitle medical = new FirstLevelTitle(2, "医学", "管理员",new Date()); 3、删除头条、以及最末条新闻标题
iterator() 返回在此 collection 的元素上进行迭代的迭代器。
remove(Object o) 从此 collection 中移除指定元素的单个实例,如果存在的话(可选操
作)。 size()
返回此 collection 中的元素数。 toArray()
返回包含此 collection 中所有元素的数组。
返回列表中最后出现指定元素的索引,如果列表不包含此 元素,则返回 -1。
List常用方法

java中集合知识点总结

java中集合知识点总结

java中集合知识点总结1. Collection接口Collection接口是Java中集合类的基本接口,它定义了一组通用的操作方法,包括添加、删除、查找等操作。

Collection接口有三个主要的子接口:List、Set和Queue。

(1) ListList是一种有序的集合,它允许重复的元素,并且可以按照索引访问元素。

List接口中有常用的实现类:ArrayList、LinkedList和Vector。

其中,ArrayList是基于数组实现的,它支持快速的随机访问和插入操作;LinkedList是基于双向链表实现的,它支持快速的插入和删除操作;Vector是线程安全的类,它支持并发访问。

(2) SetSet是一种不允许重复元素的集合,它用来存储唯一的元素。

Set接口中有常用的实现类:HashSet、LinkedHashSet和TreeSet。

其中,HashSet是基于哈希表实现的,它提供了快速的查找和插入操作;LinkedHashSet是基于哈希表和链表实现的,它保持了元素的插入顺序;TreeSet是基于红黑树实现的,它提供了有序的集合。

(3) QueueQueue是一种先进先出的集合,它用来存储元素,并且支持插入和删除操作。

Queue接口中有常用的实现类:LinkedList和PriorityQueue。

其中,LinkedList可以作为Queue来使用,它支持快速的插入和删除操作;PriorityQueue是基于堆实现的,它提供了优先级队列的功能。

2. Map接口Map接口是Java中的映射表,它用来存储键值对的数据。

Map接口中有常用的实现类:HashMap、LinkedHashMap、TreeMap和Hashtable。

其中,HashMap是基于哈希表实现的,它提供了快速的查找和插入操作;LinkedHashMap是基于哈希表和链表实现的,它保持了键值对的插入顺序;TreeMap是基于红黑树实现的,它提供了有序的映射表;Hashtable是线程安全的类,它支持并发访问。

Java集合系列(一):集合的定义及分类

Java集合系列(一):集合的定义及分类

Java集合系列(⼀):集合的定义及分类1. 集合的定义什么是集合呢?定义:集合是⼀个存放对象的引⽤的容器。

在Java中,集合位于java.util包下。

2. 集合和数组的区别(⾯试常问)提到容器,就会想起数组,那么集合和数组的区别是什么呢?(这⾥是重点,⾯试可能问的⽐较多)1. 数组和集合都是Java中的容器2. 数组的长度是固定的,集合的长度是可变的3. 数组只能存储相同数据类型的数据,这⾥的数据类型可以是基本数据类型,也可以是引⽤类型4. 集合可以存储不同数据类型的对象的引⽤(但⼀般情况下,我们会使⽤泛型来约定只使⽤1种数据类型),但不能存储基本数据类型空⼝⽆凭,我们来点代码配合理解,⾸先,我们看下如下的数组代码:String[] platformArray = new String[3];platformArray[0] = "博客园";platformArray[1] = "掘⾦";platformArray[2] = "微信公众号";platformArray[3] = "个⼈博客";运⾏代码就会发现,platformArray[3] = "个⼈博客";会引发ng.ArrayIndexOutOfBoundsException异常。

⽽使⽤集合时就不存在这个问题,因为集合在声明时不需要指定长度并且长度会根据放⼊元素的多少⽽变化:List<String> platformList = new ArrayList<>();platformList.add("博客园");platformList.add("掘⾦");platformList.add("微信公众号");platformList.add("个⼈博客");观察上⾯声明数组的代码,我们可以推断出下⾯的代码肯定是编译不通过的:String[] platformArray = new String[3];platformArray[0] = "博客园";platformArray[1] = "掘⾦";platformArray[2] = 1;因为数组声明时⽤的是String类型,⽽platformArray[2] = 1;赋值时却使⽤了int类型。

Java中常用的集合类有哪些?它们的使用场景是什么?

Java中常用的集合类有哪些?它们的使用场景是什么?

Java中常用的集合类有哪些?它们的使用场景是什么?Java作为目前最为流行的编程语言之一,其优越的面向对象编程思想和强大的类库使其成为了广大编程爱好者和专业开发者的首选语言之一。

在Java开发中,常用的集合类具有广泛的应用场景,可以大大简化我们代码的编写和维护。

在本篇文章中,我们将介绍Java中常用的集合类有哪些,它们的使用场景是什么,以及如何选择合适的集合类来应对各种场景。

一、Java中常用的集合类Java中常用的集合类包括List、Set、Map等,具体如下:1.ListList是Java中最基础和最常用的集合类之一,它是一个有序的集合,可以存储重复的元素。

List提供了一系列的方法用来操作列表中的元素,如添加、删除、获取、修改等。

常见的List有ArrayList 和LinkedList。

2.SetSet是Java中的另一个基础集合类,它是一个无序的集合,不允许存储重复的元素。

Set提供了一系列的方法用来操作集合中的元素,如添加、删除、获取等。

常见的Set有HashSet、TreeSet。

3.MapMap是Java中常用的映射关系集合,它存储键值对,支持通过键来访问值。

Map提供了一系列的方法用来操作映射关系,如添加、删除、获取、修改等。

常见的Map有HashMap、TreeMap、ConcurrentHashMap等。

二、Java中常用集合类的使用场景不同的集合类有不同的使用场景,我们需要根据具体的业务需求来选择合适的集合类。

下面我们来介绍几种常见的使用场景及其对应的集合类。

1.需要随机访问元素的情况:ArrayListArrayList是Java中常用的集合类之一,它支持随机访问,通过索引访问元素的时间复杂度为O(1),是处理元素数量较大的情况下的较好选择。

2.需要频繁插入或删除元素的情况:LinkedListLinkedList是另一个常用的集合类,它支持快速的插入和删除操作,通过节点互相关联实现。

java中collection的用法

java中collection的用法

java中collection的用法Java中的集合(Collection)是一种数据结构,用于存储和操作一组对象。

在Java中,集合是Java Collections Framework(JCF)的一部分。

JCF提供了一组接口和实现类,可以方便地处理集合数据。

常见的集合包括List、Set、Map等。

List是一个有序的集合,可以包含重复的元素。

常见的实现类有ArrayList和LinkedList。

ArrayList是一个基于数组实现的动态数组,支持随机访问和快速插入/删除操作。

LinkedList是一个基于链表实现的双向链表,支持快速插入/删除操作,但不支持随机访问。

Set是一个不允许重复元素的集合,常见的实现类有HashSet和TreeSet。

HashSet是一个基于哈希表实现的集合,不保证元素的顺序。

TreeSet是一个基于红黑树实现的有序集合,可以按照元素的自然顺序排序,也可以指定比较器进行排序。

Map是一个键值对的映射,每个键只能对应一个值。

常见的实现类有HashMap和TreeMap。

HashMap是一个基于哈希表实现的映射,不保证键值对的顺序。

TreeMap是一个基于红黑树实现的有序映射,可以按照键的自然顺序排序,也可以指定比较器进行排序。

除了以上常见的集合,Java还提供了一些特殊的集合类型,比如Stack、Queue、Deque等。

Stack是一个后进先出的堆栈,常用于表达式求值、括号匹配等场景。

Queue是一个先进先出的队列,常用于任务调度、消息队列等场景。

Deque是一个双端队列,可以在两端进行插入和删除操作,常用于实现栈、队列等数据结构。

总之,Java中的集合提供了丰富的数据结构和操作方式,可以大大简化代码的编写和维护。

熟练掌握集合的用法,是Java开发的基本功之一。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

集合版本号:1.0作者:huangdos日期:2006年6月06日摘要摘要内容Java里面最重要,最常用也就是集会一部分了。

能够用好集合和理解好集合对于做Java程序的开发拥有无比的好处。

本文详细解释了关于Java中的集合是如何实现的,以及他们的实现原理。

关键字:Collection , List ,Set , Map , 集合,框架。

目录1集合框架 (2)1.1集合框架概述 (2)1.1.1容器简介 (2)1.1.2容器的分类 (3)1.2C OLLECTION (5)1.2.1常用方法 (5)1.2.2迭代器 (8)1.3L IST (10)1.3.1概述 (10)1.3.2常用方法 (10)1.3.3实现原理 (14)1.4M AP (18)1.4.1概述 (18)1.4.2常用方法 (18)1.4.3Comparable 接口 (23)1.4.4实现原理 (24)1.4.5覆写hashCode() (29)1.5S ET (32)1.5.1概述 (32)1.5.2常用方法 (33)1.5.3实现原理 (36)1.6总结:集合框架中常用类比较 (38)2练习 (38)3附录:排序 (40)集合1集合框架1.1集合框架概述1.1.1容器简介到目前为止,我们已经学习了如何创建多个不同的对象,定义了这些对象以后,我们就可以利用它们来做一些有意义的事情。

举例来说,假设要存储许多雇员,不同的雇员的区别仅在于雇员的身份证号。

我们可以通过身份证号来顺序存储每个雇员,但是在内存中实现呢?是不是要准备足够的内存来存储1000个雇员,然后再将这些雇员逐一插入?如果已经插入了500条记录,这时需要插入一个身份证号较低的新雇员,该怎么办呢?是在内存中将500条记录全部下移后,再从开头插入新的记录? 还是创建一个映射来记住每个对象的位置?当决定如何存储对象的集合时,必须考虑如下问题。

对于对象集合,必须执行的操作主要以下三种:◆添加新的对象◆删除对象◆查找对象我们必须确定如何将新的对象添加到集合中。

可以将对象添加到集合的末尾、开头或者中间的某个逻辑位置。

从集合中删除一个对象后,对象集合中现有对象会有什么影响呢?可能必须将内存移来移去,或者就在现有对象所驻留的内存位置下一个“洞”。

在内存中建立对象集合后,必须确定如何定位特定对象。

可建立一种机制,利用该机制可根据某些搜索条件(例如身份证号)直接定位到目标对象;否则,便需要遍历集合中的每个对象,直到找到要查找的对象为止。

前面大家已经学习过了数组。

数组的作用是可以存取一组数据。

但是它却存在一些缺点,使得无法使用它来比较方便快捷的完成上述应用场景的要求。

1.首先,在很多数情况下面,我们需要能够存储一组数据的容器,这一点虽然数组可以实现,但是如果我们需要存储的数据的个数多少并不确定。

比如说:我们需要在容器里面存储某个应用系统的当前的所有的在线用户信息,而当前的在线用户信息是时刻都可能在变化的。

也就是说,我们需要一种存储数据的容器,它能够自动的改变这个容器的所能存放的数据数量的大小。

这一点上,如果使用数组来存储的话,就显得十分的笨拙。

2.我们再假设这样一种场景:假定一个购物网站,经过一段时间的运行,我们已经存储了一系列的购物清单了,购物清单中有商品信息。

如果我们想要知道这段时间里面有多少种商品被销售出去了。

那么我们就需要一个容器能够自动的过滤掉购物清单中的关于商品的重复信息。

如果使用数组,这也是很难实现的。

3.最后再想想,我们经常会遇到这种情况,我知道某个人的帐号名称,希望能够进一步了解这个人的其他的一些信息。

也就是说,我们在一个地方存放一些用户信息,我们希望能够通过用户的帐号来查找到对应的该用户的其他的一些信息。

再举个查字典例子:假设我们希望使用一个容器来存放单词以及对于这个单词的解释,而当我们想要查找某个单词的意思的时候,能够根据提供的单词在这个容器中找到对应的单词的解释。

如果使用数组来实现的话,就更加的困难了。

为解决这些问题,Java里面就设计了容器集合,不同的容器集合以不同的格式保存对象。

数学背景在常见用法中,集合(collection)和数学上直观的集(set)的概念是相同的。

集是一个唯一项组,也就是说组中没有重复项。

实际上,“集合框架”包含了一个Set接口和许多具体的Set类。

但正式的集概念却比Java 技术提前了一个世纪,那时英国数学家George Boole 按逻辑正式的定义了集的概念。

大部分人在小学时通过我们熟悉的维恩图引入的“集的交”和“集的并”学到过一些集的理论。

集的基本属性如下:◆集内只包含每项的一个实例◆集可以是有限的,也可以是无限的◆可以定义抽象概念集不仅是逻辑学、数学和计算机科学的基础,对于商业和系统的日常应用来说,它也很实用。

“连接池”这一概念就是数据库服务器的一个开放连接集。

Web 服务器必须管理客户机和连接集。

文件描述符提供了操作系统中另一个集的示例。

映射是一种特别的集。

它是一种对(pair)集,每个对表示一个元素到另一元素的单向映射。

一些映射示例有:◆IP 地址到域名(DNS)的映射◆关键字到数据库记录的映射◆字典(词到含义的映射)◆ 2 进制到10 进制转换的映射就像集一样,映射背后的思想比Java 编程语言早的多,甚至比计算机科学还早。

而Java中的Map 就是映射的一种表现形式。

1.1.2容器的分类既然您已经具备了一些集的理论,您应该能够更轻松的理解“集合框架”。

“集合框架”由一组用来操作对象的接口组成。

不同接口描述不同类型的组。

在很大程度上,一旦您理解了接口,您就理解了框架。

虽然您总要创建接口特定的实现,但访问实际集合的方法应该限制在接口方法的使用上;因此,允许您更改基本的数据结构而不必改变其它代码。

框架接口层次结构如下图所示。

Java容器类类库的用途是“保存对象”,并将其划分为两个不同的概念:1)Collection 。

一组对立的元素,通常这些元素都服从某种规则。

List必须保持元素特定的顺序,而Set 不能有重复元素。

2)Map 。

一组成对的“键值对”对象。

初看起来这似乎应该是一个Collection ,其元素是成对的对象,但是这样的设计实现起来太笨拙了,于是我们将Map明确的提取出来形成一个独立的概念。

另一方面,如果使用Collection 表示Map的部分内容,会便于查看此部分内容。

因此Map一样容易扩展成多维Map ,无需增加新的概念,只要让Map中的键值对的每个“值”也是一个Map即可。

Collection和Map的区别在于容器中每个位置保存的元素个数。

Collection 每个位置只能保存一个元素(对象)。

此类容器包括:List ,它以特定的顺序保存一组元素;Set 则是元素不能重复。

Map保存的是“键值对”,就像一个小型数据库。

我们可以通过“键”找到该键对应的“值”。

◆Collection –对象之间没有指定的顺序,允许重复元素。

◆Set –对象之间没有指定的顺序,不允许重复元素◆List–对象之间有指定的顺序,允许重复元素,并引入位置下标。

◆Map –接口用于保存关键字(Key)和数值(V alue)的集合,集合中的每个对象加入时都提供数值和关键字。

Map 接口既不继承Set 也不继承Collection。

List、Set、Map共同的实现基础是Object数组除了四个历史集合类外,Java 2 框架还引入了六个集合实现,如下表所示。

这里没有Collection接口的实现,接下来我们再来看一下下面的这张关于集合框架的大图:这张图看起来有点吓人,熟悉之后就会发现其实只有三种容器:Map,List和Set ,它们各自有两个三个实现版本。

常用的容器用黑色粗线框表示。

点线方框代表“接口”,虚线方框代表抽象类,而实线方框代表普通类(即具体类,而非抽象类)。

虚线箭头指出一个特定的类实现了一个接口(在抽象类的情况下,则是“部分”实现了那个接口)。

实线箭头指出一个类可生成箭头指向的那个类的对象。

例如任何集合( Collection )都能产生一个迭代器( Iterator ),而一个List 除了能生成一个ListIterator (列表迭代器)外,还能生成一个普通迭代器,因为List 正是从集合继承来的.1.2Collection1.2.1常用方法Collection接口用于表示任何对象或元素组。

想要尽可能以常规方式处理一组元素时,就使用这一接口。

Collection 在前面的大图也可以看出,它是List和Set 的父类。

并且它本身也是一个接口。

它定义了作为集合所应该拥有的一些方法。

如下:注意:集合必须只有对象,集合中的元素不能是基本数据类型。

Collection接口支持如添加和除去等基本操作。

设法除去一个元素时,如果这个元素存在,除去的仅仅是集合中此元素的一个实例。

◆boolean add(Object element)◆boolean remove(Object element)Collection 接口还支持查询操作:◆int size()◆boolean isEmpty()◆boolean contains(Object element)◆Iterator iterator()组操作:Collection 接口支持的其它操作,要么是作用于元素组的任务,要么是同时作用于整个集合的任务。

◆boolean containsAll(Collection collection)◆boolean addAll(Collection collection)◆void clear()◆void removeAll(Collection collection)containsAll() 方法允许您查找当前集合是否包含了另一个集合的所有元素,即另一个集合是否是当前集合的子集。

其余方法是可选的,因为特定的集合可能不支持集合更改。

addAll() 方法确保另一个集合中的所有元素都被添加到当前的集合中,通常称为并。

clear() 方法从当前集合中除去所有元素。

removeAll() 方法类似于clear() ,但只除去了元素的一个子集。

retainAll() 方法类似于removeAll() 方法,不过可能感到它所做的与前面正好相反:它从当前集合中除去不属于另一个集合的元素,即交。

我们看一个简单的例子,来了解一下集合类的基本方法的使用:import java.util.*;public class CollectionToArray {public static void main(String[] args) {Collection collection1=new ArrayList();//创建一个集合对象collection1.add("000");//添加对象到Collection集合中collection1.add("111");collection1.add("222");System.out.println("集合collection1的大小:"+collection1.size());System.out.println("集合collection1的内容:"+collection1);collection1.remove("000");//从集合collection1中移除掉 "000" 这个对象System.out.println("集合collection1移除 000 后的内容:"+collection1);System.out.println("集合collection1中是否包含000 :"+collection1.contains("000"));System.out.println("集合collection1中是否包含111 :"+collection1.contains("111"));Collection collection2=new ArrayList();collection2.addAll(collection1);//将collection1 集合中的元素全部都加到collection2中System.out.println("集合collection2的内容:"+collection2);collection2.clear();//清空集合 collection1 中的元素System.out.println("集合collection2是否为空:"+collection2.isEmpty());//将集合collection1转化为数组Object s[]= collection1.toArray();for(int i=0;i<s.length;i++){System.out.println(s[i]);}}}运行结果为:集合collection1的大小:3集合collection1的内容:[000, 111, 222]集合collection1移除 000 后的内容:[111, 222]集合collection1中是否包含000 :false集合collection1中是否包含111 :true集合collection2的内容:[111, 222]集合collection2是否为空:true111222这里需要注意的是,Collection 它仅仅只是一个接口,而我们真正使用的时候,确是创建该接口的一个实现类。

相关文档
最新文档