Iterables大多数方法直接调的是Iterators的方法
该类主要使用场景是用于非Collection体系中的Iterable对象,以下的大部分方法在Collections工具类中都能找到相应的方法
all(Iterable<T> iterable, Predicate<? super T> predicate)
all(Iterable<T> iterable, Predicate<? super T> predicate)
合并多个iterable为一个 | |
返回object在iterable中的个数 | |
partition(Iterable, int) | 按size对iterable进行切分成N个不可编辑的List |
getFirst(Iterable, T default) | Returns the first element of the iterable, or the default value if empty. |
getLast(Iterable) | Returns the last element of the iterable, or fails fast with a NoSuchElementException if it's empty. |
判断两个Iterable的元素是否完全一致(包括他们的顺序) | |
返回一个不可编辑的iterable. | |
返回前limit个元素,当iterable的元素个数 少于limit时,则返回整个iterable | |
getOnlyElement(Iterable) | 预期iterable中只有一个element,若只有0个或多个,将会抛出异常。当只有一个时,返回该元素 |
getOnlyElement(Iterable, defaultValue) | 当Iterable为空时,返回默认值 |
size(Iterable) | 返回数量 |
contains(Iterable<?> iterable, @Nullable Object element) | 是否存在element对象 |
removeAll(Iterable<?> removeFrom, Collection<?> elementsToRemove) | 删除elementsToRemove中的元素 |
retainAll(Iterable<?> removeFrom, Collection<?> elementsToRetain) | 仅保留elementsToRetain中的元素 |
removeIf(Iterable<T> removeFrom, Predicate<? super T> predicate) | 删除匹配的元素 |
removeFirstMatching(Iterable<T> removeFrom, Predicate<? super T> predicate) | 仅删除首个匹配的元素 |
toArray(Iterable<? extends T> iterable, Class<T> type) | 转成数组 |
addAll(Collection<T> addTo, Iterable<? extends T> elementsToAdd) | |
Iterable<T> cycle(final Iterable<T> iterable) | 返回无限循环的iterable |
filter( final Iterable<T> unfiltered, final Predicate<? super T> retainIfTrue) | 过滤 |
any(Iterable<T> iterable, Predicate<? super T> predicate) | 满足任意一个就返回成功 |
all(Iterable<T> iterable, Predicate<? super T> predicate) | |
find(Iterable<T> iterable, Predicate<? super T> predicate) | 返回首个匹配的元素,当找不到时将报错 |
find( Iterable<? extends T> iterable, Predicate<? super T> predicate, @Nullable T defaultValue) | |
int indexOf(Iterable<T> iterable, Predicate<? super T> predicate) | |
Iterable<T> transform( final Iterable<F> fromIterable, final Function<? super F, ? extends T> function) | |
T get(Iterable<T> iterable, int position) |