From 83c3dc05b2b535f5055c46f4388f68606f32132c Mon Sep 17 00:00:00 2001 From: igoudt Date: Sun, 28 May 2017 12:24:06 +0200 Subject: [PATCH] forloop to stream --- .../abilities/effects/ContinuousEffects.java | 23 ++++--------------- 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/Mage/src/main/java/mage/abilities/effects/ContinuousEffects.java b/Mage/src/main/java/mage/abilities/effects/ContinuousEffects.java index 5d5454c5e1e..55820a6134a 100644 --- a/Mage/src/main/java/mage/abilities/effects/ContinuousEffects.java +++ b/Mage/src/main/java/mage/abilities/effects/ContinuousEffects.java @@ -30,6 +30,8 @@ package mage.abilities.effects; import java.io.Serializable; import java.util.*; import java.util.Map.Entry; +import java.util.stream.Collectors; + import mage.MageObject; import mage.abilities.*; import mage.abilities.keyword.SpliceOntoArcaneAbility; @@ -83,7 +85,6 @@ public class ContinuousEffects implements Serializable { // note all effect/abilities that were only added temporary private final Map> temporaryEffects = new HashMap<>(); - private final ContinuousEffectSorter sorter = new ContinuousEffectSorter(); public ContinuousEffects() { applyCounters = new ApplyCountersEffect(); @@ -211,7 +212,7 @@ public class ContinuousEffects implements Serializable { updateTimestamps(layerEffects); - layerEffects.sort(sorter); + Collections.sort(layerEffects, Comparator.comparingLong(ContinuousEffect::getOrder)); return layerEffects; } @@ -240,13 +241,7 @@ public class ContinuousEffects implements Serializable { } private List filterLayeredEffects(List effects, Layer layer) { - List layerEffects = new ArrayList<>(); - for (ContinuousEffect effect : effects) { - if (effect.hasLayer(layer)) { - layerEffects.add(effect); - } - } - return layerEffects; + return effects.stream().filter(effect->effect.hasLayer(layer)).collect(Collectors.toList()); } public HashMap> getApplicableRequirementEffects(Permanent permanent, Game game) { @@ -554,7 +549,7 @@ public class ContinuousEffects implements Serializable { /** * Filters out asThough effects that are not active. * - * @param AsThoughEffectType type + * @param type type * @param game * @return */ @@ -1266,11 +1261,3 @@ public class ContinuousEffects implements Serializable { return controllerFound; } } - -class ContinuousEffectSorter implements Comparator, Serializable { - - @Override - public int compare(ContinuousEffect one, ContinuousEffect two) { - return Long.compare(one.getOrder(), two.getOrder()); - } -}