java 集合框架类_Java 集合框架:工具类

Collections类

常用方法:

1.max(Collection extends T> coll):根据元素的自然顺序,返回给定集合元素中的最大元素

2.min(Cssollection extends T> coll):根据元素的自然顺序,返回给定集合元素中的最小元素

3.sort(List list) :根据元素的自然顺序对指定列表按升序进行排序。列表中的所有元素都必须实现 Comparable 接口。

4.sort(List list, Comparator super T> c)  : 根据指定比较器产生的顺序对指定列表进行排序

5.reverse(List> list):反转指定列表中元素的顺序

6.swap(List> list, int i, int j):在指定列表的指定位置处交换元素,如果指定位置相同,则调用此方法不会更改列表。

7.binarySearch(List extends Comparable super T>> list, T key) :返list集合元素按照自然顺序升序排序后,使用二分搜索法搜索list集合,返回指定对象的索引,如果没找到返回-1。

8.max(Collection extends T> coll):根据元素的自然顺序,返回给定集合元素中的最大元素

9.min(Collection extends T> coll):根据元素的自然顺序,返回给定集合元素中的最小元素

Collections类方法演示

1.

d8c0afa884cc8e4ffe38110d84ac6e04.png

注意:

在使用max和min方法时要求存入集合中的对象对应的类必须实现Comparable接口,否则程序在编译阶段就会报错。(详见备注示例2)

2.sort(List list):根据元素的自然顺序对指定列表按升序进行排序。列表中的所有元素都必须实现Comparable接口。

464fbb9eb9dc18705dafe1886fcb79f3.png

100d611a33602bba70aada98b0fbbeb6.png

注意:

在使用sort(List list)方法时要求存入集合中的对象对应的类必须实现Comparable接口,否则程序在编译阶段就会报错。(详见备注示例2)

3.sort(List list, Comparator super T> c): 根据指定比较器产生的顺序对指定列表进行排序

bf21f0c7779e0c92ea902715f2f0a882.png

注:实现集合中数据升序排列

注意:在使用sort(List list, Comparator super T> c)  方法时存入集合中的对象对应的类无须实现Comparable接口。(详见备注示例2)

4.reverse(List> list):反转指定列表中元素的顺序

38f38f944e4d3ce10601d836a9220020.png

3d59742486d2ca8ba9c8fc9e8318a476.png

注意:

在使用reverse(List> list)方法时存入集合中的对象对应的类无须实现Comparable接口。(详见备注示例2)

5.reverse(List> list):反转指定列表中元素的顺序

e3552030c3439806413b1705a16878e7.png

f6cad1e7061cca2ce3ce4edad26f1995.png

注意:

在使用reverse(List> list)方法时存入集合中的对象对应的类无须实现Comparable接口。(详见备注示例2)

6.swap(List> list, intsi, int j):在指定列表的指定位置处交换元素,如果指定位置相同,则调用此方法不会更改列表。

01c00296123d25602f2c481b2f77ddd8.png

ce962eb4ed56cb09fba9c0fa88305e40.png

注意:

在使用swap(List> list, int i, int j)方法时存入集合中的对象对应的类无须实现Comparable接口。(详见备注示例2)

7.binarySearch(List extends Comparable super T>> list, T key) :返list集合元素按照自然顺序升序排序后,使用二分搜索法搜索list集合,返回指定对象的索引,如果没找到返回-1。

30c272ac30e18a273c48dfe3cfbe0306.png

注意:

1.使用该方法前必须保证集合中的数据是升序排列的,否则结果不正确(详见备注示例2)

2.在使用该方法时存入集合中的对象对应的类必须实现Comparable接口,否则程序在编译阶段就会报错。 (详见备注示例3)

Comparable接口与Comparator接口

Comparable接口:

1.String和各种包装类已经实现了Comparable接口

2.TreeSet集合内默认是按照自然顺序排序的

3.在集合内元素之间的比较,由该类的compareTo(Object o)方法来完成,因为这种比较是在类内部实现,所以将Comparable称为内部比较器

Comparator:

1.外部比较器

2.配合Collections工具类的sort(Listlist, Comparator c)方法使用。

3.当集合中的对象不支持自比较或者自比较的功能不能满足需求时使用

4.和内部比较器相比,其可重用性好

Comparator接口:

0310dafad19e76bcc0fc8d4c56c4dfe8.png

注:没有实现Comparable

04fb7a7014693f3a07fd2bed4ad1ecc1.png

acad9b8a602a3a34296347894edf9a37.png

注:实现Comparator的compare方法

11906f075df28814372392b8330ec8df.png

Arrays类

常用方法:

1.asList(T... a):将数组转换为List集合

2.static void sort(int[] a):对指定的int型数组按数字升序进行排序。

3.static void sort(T[] a, Comparator super T> c):根据指定比较器产生的顺序对指定对象数组进行排序。

4.staticbooleanequals(Object[] a1, Object[] a2):判断构成两个数组的元素是否完全相同,相同返回true,否则返回false。

5.static intbinarySearch(Object[] a, Object key):二分搜索法来搜索指定数组,以获得指定对象。

6.static intbinarySearch(Object[] a, intfromIndex, inttoIndex, Object key):二分搜索法来搜索指定数组的范围,以获得指定对象。

asList方法

asList(T... a):将数组转换为List集合

096be5927db0f9dbd31e22bfbc3ad8f3.png

sort方法

static void sort(int[] a):对指定的int型数组按数字升序进行排序。

static void sort(T[] a, Comparator super T> c):根据指定比较器产生的顺序对指定对象数组进行排序。

升序:

4ed309aaeb2644a242651fbc1763f92f.png

降序:

51ec39fb02b2615c7018b6c409d79fab.png

注:和升序的不同点:只是颠倒了一下顺序。

equals方法

staticbooleanequals(Object[] a1, Object[] a2):判断构成两个数组的元素是否完全相同,相同返回true,否则返回false。

e032b30545b53fab7beb5ade8497bc9d.png

代码执行完后,array1和array2两个数组变为有序的数组。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值