From 018a3d8c91a9682c4ef62defe04679bd499044d6 Mon Sep 17 00:00:00 2001 From: Hanmac Date: Fri, 4 May 2018 23:39:31 +0200 Subject: [PATCH] FCollection: extra get Function that checks for element in Collection --- .../main/java/forge/util/collect/FCollection.java | 12 ++++++++++++ .../java/forge/util/collect/FCollectionView.java | 2 ++ 2 files changed, 14 insertions(+) diff --git a/forge-core/src/main/java/forge/util/collect/FCollection.java b/forge-core/src/main/java/forge/util/collect/FCollection.java index bb100a53787..ac523f54560 100644 --- a/forge-core/src/main/java/forge/util/collect/FCollection.java +++ b/forge-core/src/main/java/forge/util/collect/FCollection.java @@ -530,6 +530,18 @@ public class FCollection implements List, /*Set,*/ FCollectionView, return Iterables.unmodifiableIterable(new LinkedList(list)); } + @Override + public T get(final T obj) { + if (obj == null) { + return null; + } + for(T x : this) { + if (x.equals(obj)) { + return x; + } + } + return obj; + } /** * An unmodifiable, empty {@link FCollection}. Overrides all methods with * default implementations suitable for an empty collection, to improve diff --git a/forge-core/src/main/java/forge/util/collect/FCollectionView.java b/forge-core/src/main/java/forge/util/collect/FCollectionView.java index 63f7867e374..56da5c6d0a4 100644 --- a/forge-core/src/main/java/forge/util/collect/FCollectionView.java +++ b/forge-core/src/main/java/forge/util/collect/FCollectionView.java @@ -74,4 +74,6 @@ public interface FCollectionView extends Iterable { * {@link Iterator#remove()}), as such an operation would have no meaning. */ Iterable threadSafeIterable(); + + T get(final T obj); } \ No newline at end of file