aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/shedaniel/rei/utils/CollectionUtils.java
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2020-01-06 15:01:10 +0800
committershedaniel <daniel@shedaniel.me>2020-01-06 15:01:10 +0800
commit0d8c3fa7d1422067ec3c4a1b2d624db9afb54ab4 (patch)
tree27ede6fd331aa9641b3a3d55dddaa084011c2ae2 /src/main/java/me/shedaniel/rei/utils/CollectionUtils.java
parent22494701d3080868d6dbf4d5ae9f4100a5332d9e (diff)
downloadRoughlyEnoughItems-0d8c3fa7d1422067ec3c4a1b2d624db9afb54ab4.tar.gz
RoughlyEnoughItems-0d8c3fa7d1422067ec3c4a1b2d624db9afb54ab4.tar.bz2
RoughlyEnoughItems-0d8c3fa7d1422067ec3c4a1b2d624db9afb54ab4.zip
3.3.4
Diffstat (limited to 'src/main/java/me/shedaniel/rei/utils/CollectionUtils.java')
-rw-r--r--src/main/java/me/shedaniel/rei/utils/CollectionUtils.java30
1 files changed, 26 insertions, 4 deletions
diff --git a/src/main/java/me/shedaniel/rei/utils/CollectionUtils.java b/src/main/java/me/shedaniel/rei/utils/CollectionUtils.java
index b23b802c7..296c9c747 100644
--- a/src/main/java/me/shedaniel/rei/utils/CollectionUtils.java
+++ b/src/main/java/me/shedaniel/rei/utils/CollectionUtils.java
@@ -5,6 +5,8 @@
package me.shedaniel.rei.utils;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Sets;
import me.shedaniel.rei.api.EntryStack;
import me.shedaniel.rei.api.annotations.Internal;
@@ -55,7 +57,27 @@ public class CollectionUtils {
}
public static <T> List<T> filter(List<T> list, Predicate<T> predicate) {
- List<T> l = new LinkedList<>();
+ List<T> l = Lists.newArrayList();
+ for (T t : list) {
+ if (predicate.test(t)) {
+ l.add(t);
+ }
+ }
+ return l;
+ }
+
+ public static <T> Set<T> filter(Set<T> list, Predicate<T> predicate) {
+ Set<T> l = Sets.newLinkedHashSet();
+ for (T t : list) {
+ if (predicate.test(t)) {
+ l.add(t);
+ }
+ }
+ return l;
+ }
+
+ public static <T> List<T> filterSetToList(Set<T> list, Predicate<T> predicate) {
+ List<T> l = Lists.newArrayList();
for (T t : list) {
if (predicate.test(t)) {
l.add(t);
@@ -65,7 +87,7 @@ public class CollectionUtils {
}
public static <T, R> List<R> map(List<T> list, Function<T, R> function) {
- List<R> l = new LinkedList<>();
+ List<R> l = Lists.newArrayList();
for (T t : list) {
l.add(function.apply(t));
}
@@ -73,7 +95,7 @@ public class CollectionUtils {
}
public static <T, R> List<R> map(T[] list, Function<T, R> function) {
- List<R> l = new LinkedList<>();
+ List<R> l = Lists.newArrayList();
for (T t : list) {
l.add(function.apply(t));
}
@@ -149,7 +171,7 @@ public class CollectionUtils {
for (T t : list) {
if (predicate.test(t)) {
if (l == null)
- l = new LinkedList<>();
+ l = Lists.newArrayList();
l.add(function.apply(t));
}
}