diff options
Diffstat (limited to 'src/main/java/me/shedaniel/rei/utils/CollectionUtils.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/utils/CollectionUtils.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/main/java/me/shedaniel/rei/utils/CollectionUtils.java b/src/main/java/me/shedaniel/rei/utils/CollectionUtils.java index 95d730f64..d364708de 100644 --- a/src/main/java/me/shedaniel/rei/utils/CollectionUtils.java +++ b/src/main/java/me/shedaniel/rei/utils/CollectionUtils.java @@ -32,6 +32,15 @@ public class CollectionUtils { return null; } + public static <T,R> List<R> castAndMap(List<T> list, Class<R> castClass) { + List<R> l = new ArrayList<>(); + for (T t : list) { + if (castClass.isAssignableFrom(t.getClass())) + l.add((R) t); + } + return l; + } + public static <T> T findFirstOrNull(List<T> list, Predicate<T> predicate) { for (T t : list) { if (predicate.test(t)) |
