diff options
| author | shedaniel <daniel@shedaniel.me> | 2022-06-28 19:24:36 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2023-05-29 21:07:19 +0800 |
| commit | 0adcf11e3c0194698af181cf12750e69b927e1da (patch) | |
| tree | a777913ad99d7d0c90082d283ed3a4b208bc071d /api/src/main/java | |
| parent | e49c13cfb2f951a66bc413a9070f4a4443034436 (diff) | |
| download | RoughlyEnoughItems-0adcf11e3c0194698af181cf12750e69b927e1da.tar.gz RoughlyEnoughItems-0adcf11e3c0194698af181cf12750e69b927e1da.tar.bz2 RoughlyEnoughItems-0adcf11e3c0194698af181cf12750e69b927e1da.zip | |
Distinct tag entries
Diffstat (limited to 'api/src/main/java')
| -rw-r--r-- | api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java b/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java index 7a6c3a285..3c05132c6 100644 --- a/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java +++ b/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java @@ -138,7 +138,7 @@ public class CollectionUtils { } return l; } - + public static <T, R> Set<R> mapToSet(Collection<T> list, Function<T, R> function) { Set<R> l = new HashSet<>(list.size() + 1); for (T t : list) { @@ -146,7 +146,7 @@ public class CollectionUtils { } return l; } - + public static <T, R> Set<R> mapToSet(Iterable<T> list, Function<T, R> function) { Set<R> l = new HashSet<>(); for (T t : list) { @@ -349,6 +349,17 @@ public class CollectionUtils { return sum; } + public static <T> List<T> distinctToList(Iterable<T> list) { + List<T> newList = new ArrayList<>(); + Set<T> set = new HashSet<>(); + for (T t : list) { + if (set.add(t)) { + newList.add(t); + } + } + return newList; + } + public static <T> Iterable<List<T>> partition(List<T> list, int size) { return () -> new UnmodifiableIterator<List<T>>() { int i = 0; |
