常用的方法:
修饰符和返回值类型 | 方法名 | 简单描述 |
static void | reverse(List<?> list) | 反转list中元素的顺序 |
static void | shuffle(List<?> list) | 对list中元素随机排序 |
static <T extends Comparable<? super T>> void | sort(List<T> list) | 按照自然序对list按升序排 |
static <T> void | sort(List<T> list, Comparator<? super T> c) | 根据指定的Complarator进行排序 |
static void | swap(List<?> list, int i, int j) | 交换list中i和j位置上的元素 |
static Object | max(Collection<? extends T> coll) | 根据自然顺序返回collection中的最大值 |
static Object | max(Collection coll, Comparator comp) | 根据自定义的Comparator来返回最大值 |
static Object | min(Collection coll) | 根据自然顺序返回collection中的最小值 |
static Object | min(Collection coll,Comparator comp) | 根据自定义的Comparator来返回最大值 |
static int | frequency(Collection c,Object o) | 返回Collection中指定元素出现的次数 |
static void | copy(List dest, List src) | 将src中的内容复制到到List中 |
static boolean | replaceAll(List list,Object oldV,Object newV) | 将list中所有指定旧值换成新值 |
同步控制相关的方法:
因为ArrayList和HashMap是线程不安全的,此时会用这个工具类来保证线程的安全性。比如:synchronizedList(list)就会返回一个线程安全的list,查看源码其实实现起来也不难,就是将关于list的操作用同步代码块包起来而已。
//以下是几个CollectionList的方法,都用同步代码块框了起来
public E get(int index) {
synchronized (mutex) {return list.get(index);}
}
public E set(int index, E element) {
synchronized (mutex) {return list.set(index, element);}
}
public void add(int index, E element) {
synchronized (mutex) {list.add(index, element);}
}
public E remove(int index) {
synchronized (mutex) {return list.remove(index);}
}