public class ListKits extends Object
copy from vipshop VJTools(com.vip.vjtools.vjkit.collection.ListUtil) and made some changes.
| 构造器和说明 |
|---|
ListKits() |
| 限定符和类型 | 方法和说明 |
|---|---|
static <T extends Comparable> |
createSortedArrayList()
排序的ArrayList.
|
static <T> SortedArrayList<T> |
createSortedArrayList(Comparator<? super T> c)
排序的ArrayList.
|
static <T> List<T> |
difference(List<? extends T> list1,
List<? extends T> list2)
list1, list2的差集(在list1,不在list2中的对象),产生新List.
|
static <T> List<T> |
disjoint(List<? extends T> list1,
List<? extends T> list2)
list1, list2的补集(在list1或list2中,但不在交集中的对象,又叫反交集)产生新List.
|
static <T> List<T> |
emptyListIfNull(List<T> list)
如果list为null,转化为一个安全的空List.
|
static <T> T |
getFirst(List<T> list)
获取第一个元素, 如果List为空返回 null.
|
static <T> T |
getLast(List<T> list)
获取最后一个元素,如果List为空返回null.
|
static <T> List<T> |
intersection(List<? extends T> list1,
List<? extends T> list2)
list1, list2的交集(同时在list1和list2的对象),产生新List
与List.retainAll()相比,考虑了的List中相同元素出现的次数, 如"a"在list1出现两次,而在list2中只出现一次,则交集里会保留一个"a".
|
static boolean |
isEmpty(List<?> list)
判断是否为空.
|
static boolean |
isNotEmpty(List<?> list)
判断是否不为空.
|
static <E> List<E> |
union(List<? extends E> list1,
List<? extends E> list2)
list1,list2的并集(在list1或list2中的对象),产生新List
|
public static boolean isEmpty(List<?> list)
public static boolean isNotEmpty(List<?> list)
public static <T> T getFirst(List<T> list)
public static <T> T getLast(List<T> list)
public static <T> List<T> emptyListIfNull(List<T> list)
注意返回的List不可写, 写入会抛出UnsupportedOperationException.
public static <E> List<E> union(List<? extends E> list1, List<? extends E> list2)
public static <T> List<T> intersection(List<? extends T> list1, List<? extends T> list2)
与List.retainAll()相比,考虑了的List中相同元素出现的次数, 如"a"在list1出现两次,而在list2中只出现一次,则交集里会保留一个"a".
public static <T> List<T> difference(List<? extends T> list1, List<? extends T> list2)
与List.removeAll()相比,会计算元素出现的次数,如"a"在list1出现两次,而在list2中只出现一次,则差集里会保留一个"a".
public static <T> List<T> disjoint(List<? extends T> list1, List<? extends T> list2)
copy from Apache Common Collection4 ListUtils,但其并集-交集时,初始大小没有对交集*2,所以做了修改
public static <T extends Comparable> SortedArrayList<T> createSortedArrayList()
from Jodd的新类型,插入时排序,但指定插入index的方法如add(index,element)不支持
public static <T> SortedArrayList<T> createSortedArrayList(Comparator<? super T> c)
from Jodd的新类型,插入时排序,但指定插入index的方法如add(index,element)不支持
Copyright © 2019. All rights reserved.