集合工具类的常用方法--小总和

前言

集合工具类是Java中的一个重要工具类,在Java常用的集合框架中起到了重要的作用。集合工具类提供了一系列的方法,可以方便地处理Java中的集合对象,提高了开发的效率。


Collections类

Collections.sort(List<T> list)

List集合进行升序排序。

Collections.reverse(List<T> list)将List集合中的元素顺序翻转。
Collections.shuffle(List<T> list)将List集合中的元素随机排序
Collections.max(Collection<? extends T> coll)返回集合中最大的元素。
fill(List<? super T> list, T obj)使用指定的元素代替集合中的所有元素。
copy(List<? super T> dest, List<? extends T> src)将源List集合中的元素复制到目标List集合中。
frequency(Collection<?> c, Object o)统计集合中指定元素的出现次数

Collections类的部分方法对集合的要求比较严格,例如sort()方法和binarySearch()方法需要对集合进行排序以保证正确性,frequency()方法需要保证集合中的元素是可比较的。


Arrays类

asList(T… a)将数组转换为List集合。
sort(T[] a)对数组进行升序排序。
copyOf(T[] original, int newLength)
  1. 复制原数组的前newLength个元素到一个新数组中。

fill(T[] a, T val)
  1. 将整个数组的元素设置成指定的值。

equals(T[] a, T[] b)判断两个数组是否相等。

需要注意的是,对于基本类型数组和对象(引用类型)数组,Arrays类的部分方法的使用有所不同。例如排序方法sort(),对于基本类型数组会按照自然顺序排序,对于对象数组需要定义比较器来进行排序。此外,底层算法的实现也有所不同。


ArrayList类

add(E element)在列表末尾添加一个元素。
add(int index, E element)在指定位置插入一个元素
set(int index, E element)替换指定位置的元素。
get(int index)获取指定位置的元素。

 clear()

删除列表中所有元素。
isEmpty()isEmpty
trimToSize()将列表的容量调整为列表实际的大小。
indexOf(Object o)返回列表中第一个出现的指定元素的索引,如果列表中不包含此元素,则返回-1。
lastIndexOf(Object o)返回列表中最后一个出现的指定元素的索引,如果列表中不包含此元素,则返回-1。
contains(Object o)判断列表是否包含指定的元素,如果包含则返回true,否则返回false。

它是底层通过动态数组实现的可伸缩数组。ArrayList提供了一系列有用的方法,可以方便地添加、删除、遍历和操作集合中的元素。

需要注意的是,在对ArrayList进行添加、删除等操作时,都有可能涉及到元素的移动,这也会影响ArrayList的性能。因此,在开发中需要特别注意ArrayList的性能问题。

ArrayList是Java中非常常用的集合类之一,它提供了一系列方便的方法。在使用ArrayList时,需要根据实际情况选择合适的方法,并对ArrayList的性能进行优化,以确保程序的效率。

 


HashSet类 

iterator()获取一个迭代器,用于迭代集合中的元素。
add(E e)添加一个元素。
remove(Object o)移除一个指定的元素。
clear()移除集合中的所有元素。
contains(Object o)判断集合中是否包含指定的元素。
size()获取集合中元素的数量。

需要注意的是,由于HashSet是基于哈希表来实现的,因此元素的顺序并不是按照插入顺序来排列的。如果需要按照插入顺序排列元素,可以考虑使用LinkedHashSet类。

HashSet类支持泛型,可以存储所有类型的对象,包括基本数据类型的包装类型。如果需要存储基本数据类型,则需要使用对应的包装类型。

以上列举的方法只是HashSet类的部分常用方法,它还提供了其他一些方法,例如:addAll(Collection c)方法、retainAll(Collection c)方法、toArray(T[] a)方法、spliterator()方法等。在使用HashSet时,需要根据实际需求选择合适的方法,提高程序的效率。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值