当前位置:首页 > 英文周记 > 正文内容

collection和collections的区别「collection和collections的区别和联系」

更新时间:2026-07-18 17:33:53 周记网4年前 (2023-01-16)英文周记140

简述Java的垃圾回收机制,collection和collections的区别

collection是一个借口。有一些方法供实现,add,addAll,clear,contain,equals等等。

collection和collections的区别「collection和collections的区别和联系」

collections是一个类,提供了一些常用的**类的静态方法,例如排序sort,取最大max,最小min啊等等。调用的时候Collections.sort(list).类似这样。

java的垃圾回收是很复杂的,由jvm执行,不同的垃圾回收器的组合有不同的参数和回收方案。

当一个对象不再存在可用的活的连接的时候,就可能会被回收,当内存消耗到一定程度,需要进行垃圾回收的时候,就会将内存释放,进行垃圾回收。

collection 和collections的区别

collection既可以表示单数 又可以表示复数

当它为可数名词时 就是单数

当它为不可数名词时 单复数同形

可数 1.收藏品 收集物

2.诗歌作品集

3.一堆东西

4.系列时装

5.为新季设计的系列时装

6.募捐

7.教堂慈善捐款

不可数

1.采集

Collections,Collection ,Map,List,Set的区别?

Collections是**的工具类,含有各种有关**操作的静态方法。

Collection是个**超级接口,其中List,set都是Collection的子接口。

List

**

List

元素有先后次序的**,

元素有index位置,

元素可以重复,

List继承与Collection接口,

实现类:

ArrayList,

Vector,

LinkedList

1)LinkedList

采用双向循环链表实现

2)ArrayList

变长数组算法实现

新的

非线程安全

3)Vector

变长数组算法实现

早期提供

线程安全

set**:

Set

元素无续,

不能重复添加,

是数学意义上的**,

继承与

Collection

接口,

实现类:

HashSet(是一个只有Key的HashMap)

Map

散列表:

也是个接口。是以键值对方式实现的**,

Map

描述了:(key:value)

成对放置的**,

key不重复,

Value可以重复.

key重复算一个.

Map适合检查查找.

主要实现:

HashMap(散列表算法实现)/

Hashtable

A

HashMap

新,

非线程安全,

不检查锁,

B

Hashtable

(1.2以前)

线程安全,

检查锁,

慢一点

Collection 和 Collections的区别

Collection 和 Collections的区别:

1、Collection是**类的上级接口,继承与他的接口主要有Set 和List.

2、Collections是针对**类的一个帮助类,他提供一系列静态方法实现对各种**的搜索、排序、线程安全化等操作。

Java中Collection和Collections的区别

1、java.util.Collection 是一个**接口(**类的一个顶级接口)。它提供了对**对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的**提供了最大化的统一操作方式,其直接继承接口有List与Set。

Collection

├List

│├LinkedList

│├ArrayList

│└Vector

│ └Stack

└Set

2、Collections则是**类的一个工具类/帮助类,其中提供了一系列静态方法,用于对**中元素进行排序、搜索以及线程安全等各种操作。

1) 排序(Sort)

使用sort方法可以根据元素的自然顺序 对指定列表按升序进行排序。列表中的所有元素都必须实现 Comparable 接口。此列表内的所有元素都必须是使用指定比较器可相互比较的

ListInteger list = new ArrayListInteger();

int array[] = {112, 111, 23, 456, 231 };

for (int i = 0; i array.length; i++) {

list.add(array[i]);

}

Collections.sort(list);

for (int i = 0; i array.length; i++) {

System.out.println(list.get(i));

}

结果:23 111 112 231 456

2) 混排(Shuffling)

混排算法所做的正好与 sort 相反: 它打乱在一个 List 中可能有的任何排列的踪迹。也就是说,基于随机源的输入重排该 List, 这样的排列具有相同的可能性(假设随机源是公正的)。这个算法在实现一个碰运气的游戏中是非常有用的。例如,它可被用来混排代表一副牌的 Card 对象的一个 List 。另外,在生成测试案例时,它也是十分有用的。

Collections.Shuffling(list)

3) 反转(Reverse)

使用Reverse方法可以根据元素的自然顺序 对指定列表按降序进行排序。

Collections.reverse(list)

4) 替换所以的元素(Fill)

使用指定元素替换指定列表中的所有元素。

Collections.fill(li,"aaa");

5) 拷贝(Copy)

用两个参数,一个目标 List 和一个源 List, 将源的元素拷贝到目标,并覆盖它的内容。目标 List 至少与源一样长。如果它更长,则在目标 List 中的剩余元素不受影响。

Collections.copy(list,li): 后面一个参数是目标列表 ,前一个是源列表

6) 返回Collections中最小元素(min)

根据指定比较器产生的顺序,返回给定 collection 的最小元素。collection 中的所有元素都必须是通过指定比较器可相互比较的

Collections.min(list)

7) 返回Collections中最小元素(max)

根据指定比较器产生的顺序,返回给定 collection 的最大元素。collection 中的所有元素都必须是通过指定比较器可相互比较的

Collections.max(list)

8) lastIndexOfSubList

返回指定源列表中最后一次出现指定目标列表的起始位置

int count = Collections.lastIndexOfSubList(list,li);

9) IndexOfSubList

返回指定源列表中第一次出现指定目标列表的起始位置

int count = Collections.indexOfSubList(list,li);

10) Rotate

根据指定的距离循环移动指定列表中的元素

Collections.rotate(list,-1);

如果是负数,则正向移动,正数则方向移动

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。