diff --git a/forge-core/src/main/java/forge/FTrace.java b/forge-core/src/main/java/forge/FTrace.java index 66da87c881a..e88ff908c21 100644 --- a/forge-core/src/main/java/forge/FTrace.java +++ b/forge-core/src/main/java/forge/FTrace.java @@ -15,11 +15,7 @@ public class FTrace { } public static FTrace get(String name0) { - FTrace trace = traces.get(name0); - if (trace == null) { - trace = new FTrace(name0); - traces.put(name0, trace); - } + FTrace trace = traces.computeIfAbsent(name0, FTrace::new); return trace; } diff --git a/forge-game/src/main/java/forge/game/CardTraitBase.java b/forge-game/src/main/java/forge/game/CardTraitBase.java index b69cc37e362..96aaabeaee9 100644 --- a/forge-game/src/main/java/forge/game/CardTraitBase.java +++ b/forge-game/src/main/java/forge/game/CardTraitBase.java @@ -655,7 +655,7 @@ public abstract class CardTraitBase extends GameObject implements IHasCardView, Map result = Maps.newHashMap(output); for (Map.Entry e : input.entrySet()) { String value = e.getValue(); - result.put(e.getKey(), output.containsKey(value) ? output.get(value) : value); + result.put(e.getKey(), output.getOrDefault(value, value)); } return result; } diff --git a/forge-game/src/main/java/forge/game/GameEntityCounterTable.java b/forge-game/src/main/java/forge/game/GameEntityCounterTable.java index 5570ffbfeba..5813dfa7675 100644 --- a/forge-game/src/main/java/forge/game/GameEntityCounterTable.java +++ b/forge-game/src/main/java/forge/game/GameEntityCounterTable.java @@ -78,7 +78,7 @@ public class GameEntityCounterTable extends ForwardingTable, Ga } Map alreadyRemoved = column(ge).get(Optional.absent()); for (Map.Entry e : ge.getCounters().entrySet()) { - int rest = e.getValue() - (alreadyRemoved.containsKey(e.getKey()) ? alreadyRemoved.get(e.getKey()) : 0); + int rest = e.getValue() - (alreadyRemoved.getOrDefault(e.getKey(), 0)); if (rest > 0) { result.put(e.getKey(), rest); } diff --git a/forge-game/src/main/java/forge/game/ability/effects/CountersMoveEffect.java b/forge-game/src/main/java/forge/game/ability/effects/CountersMoveEffect.java index ddf13675d68..1f22a9db209 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/CountersMoveEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/CountersMoveEffect.java @@ -362,7 +362,7 @@ public class CountersMoveEffect extends SpellAbilityEffect { if (cnum > 0) { src.subtractCounter(cType, cnum, activator); game.updateLastStateForCard(src); - countersToAdd.put(cType, (countersToAdd.containsKey(cType) ? countersToAdd.get(cType) : 0) + cnum); + countersToAdd.put(cType, (countersToAdd.getOrDefault(cType, 0)) + cnum); } } } diff --git a/forge-game/src/main/java/forge/game/card/Card.java b/forge-game/src/main/java/forge/game/card/Card.java index 25ccc0af878..89587f4ea77 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -7950,26 +7950,14 @@ public class Card extends GameEntity implements Comparable, IHasSVars { } } } else { - List result = chosenModesTurn.get(original); - if (result == null) { - result = Lists.newArrayList(); - chosenModesTurn.put(original, result); - } + List result = chosenModesTurn.computeIfAbsent(original, k -> Lists.newArrayList()); result.add(mode); - result = chosenModesGame.get(original); - if (result == null) { - result = Lists.newArrayList(); - chosenModesGame.put(original, result); - } + result = chosenModesGame.computeIfAbsent(original, k -> Lists.newArrayList()); result.add(mode); if (yourCombat) { - result = chosenModesYourCombat.get(original); - if (result == null) { - result = Lists.newArrayList(); - chosenModesYourCombat.put(original, result); - } + result = chosenModesYourCombat.computeIfAbsent(original, k -> Lists.newArrayList()); result.add(mode); } } diff --git a/forge-game/src/main/java/forge/game/mana/ManaCostBeingPaid.java b/forge-game/src/main/java/forge/game/mana/ManaCostBeingPaid.java index 30ed2e15373..1b2933d00f0 100644 --- a/forge-game/src/main/java/forge/game/mana/ManaCostBeingPaid.java +++ b/forge-game/src/main/java/forge/game/mana/ManaCostBeingPaid.java @@ -263,11 +263,7 @@ public class ManaCostBeingPaid { private void increaseShard(final ManaCostShard shard, final int toAdd, final boolean forX) { if (toAdd <= 0) { return; } - ShardCount sc = unpaidShards.get(shard); - if (sc == null) { - sc = new ShardCount(); - unpaidShards.put(shard, sc); - } + ShardCount sc = unpaidShards.computeIfAbsent(shard, k -> new ShardCount()); if (forX) { sc.xCount += toAdd; } diff --git a/forge-gui-desktop/src/main/java/forge/gui/ImportSourceAnalyzer.java b/forge-gui-desktop/src/main/java/forge/gui/ImportSourceAnalyzer.java index 0f1723d62a5..a7ca708d647 100644 --- a/forge-gui-desktop/src/main/java/forge/gui/ImportSourceAnalyzer.java +++ b/forge-gui-desktop/src/main/java/forge/gui/ImportSourceAnalyzer.java @@ -445,7 +445,7 @@ public class ImportSourceAnalyzer { analyzeListedDir(root, ForgeConstants.CACHE_ICON_PICS_DIR, new ListedAnalyzer() { @Override public String map(final String filename) { - return iconFileNames.containsKey(filename) ? iconFileNames.get(filename) : null; + return iconFileNames.getOrDefault(filename, null); } @Override @@ -617,7 +617,7 @@ public class ImportSourceAnalyzer { analyzeListedDir(root, targetDir, new ListedAnalyzer() { @Override public String map(final String filename) { - return fileDb.containsKey(filename) ? fileDb.get(filename) : null; + return fileDb.getOrDefault(filename, null); } @Override diff --git a/forge-gui-desktop/src/main/java/forge/itemmanager/ItemManager.java b/forge-gui-desktop/src/main/java/forge/itemmanager/ItemManager.java index 916353f215e..5896e573ca1 100644 --- a/forge-gui-desktop/src/main/java/forge/itemmanager/ItemManager.java +++ b/forge-gui-desktop/src/main/java/forge/itemmanager/ItemManager.java @@ -826,11 +826,7 @@ public abstract class ItemManager extends JPanel implem @SuppressWarnings("unchecked") public void addFilter(final ItemFilter filter) { final Class> filterClass = (Class>) filter.getClass(); - List> classFilters = this.filters.get(filterClass); - if (classFilters == null) { - classFilters = new ArrayList<>(); - this.filters.put(filterClass, classFilters); - } + List> classFilters = this.filters.computeIfAbsent(filterClass, k -> new ArrayList<>()); if (classFilters.size() > 0) { //if filter with the same class already exists, try to merge if allowed //NOTE: can always use first filter for these checks since if diff --git a/forge-gui-desktop/src/main/java/forge/sound/AltSoundSystem.java b/forge-gui-desktop/src/main/java/forge/sound/AltSoundSystem.java index d1c45e508fd..7ae4c5b3677 100644 --- a/forge-gui-desktop/src/main/java/forge/sound/AltSoundSystem.java +++ b/forge-gui-desktop/src/main/java/forge/sound/AltSoundSystem.java @@ -44,7 +44,7 @@ class AsyncSoundRegistry { } public synchronized static int getNumIterations(String soundName) { - return soundsPlayed.containsKey(soundName) ? soundsPlayed.get(soundName) : 0; + return soundsPlayed.getOrDefault(soundName, 0); } } diff --git a/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java b/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java index ec10f0b288f..711d330de78 100644 --- a/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java +++ b/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java @@ -940,11 +940,7 @@ public class FSkin { /** @return {@link java.awt.font} */ private static Font getFixedFont(final int size) { - Font fixedFont = fixedFonts.get(size); - if (fixedFont == null) { - fixedFont = new Font("Monospaced", Font.PLAIN, size); - fixedFonts.put(size, fixedFont); - } + Font fixedFont = fixedFonts.computeIfAbsent(size, s -> new Font("Monospaced", Font.PLAIN, s)); return fixedFont; } diff --git a/forge-gui-mobile/src/forge/adventure/pointofintrest/PointOfInterestChanges.java b/forge-gui-mobile/src/forge/adventure/pointofintrest/PointOfInterestChanges.java index 8f5ead4cd26..0f8a4f2bba7 100644 --- a/forge-gui-mobile/src/forge/adventure/pointofintrest/PointOfInterestChanges.java +++ b/forge-gui-mobile/src/forge/adventure/pointofintrest/PointOfInterestChanges.java @@ -147,7 +147,7 @@ public class PointOfInterestChanges implements SaveFileContent { public void addObjectReputation(int id, int delta) { - reputation.put(id, (reputation.containsKey(id)?reputation.get(id):0) + delta); + reputation.put(id, (reputation.getOrDefault(id, 0)) + delta); } public int getMapReputation(){ diff --git a/forge-gui/src/main/java/forge/deck/io/DeckPreferences.java b/forge-gui/src/main/java/forge/deck/io/DeckPreferences.java index abbabdc0410..64da675dc60 100644 --- a/forge-gui/src/main/java/forge/deck/io/DeckPreferences.java +++ b/forge-gui/src/main/java/forge/deck/io/DeckPreferences.java @@ -119,11 +119,7 @@ public class DeckPreferences { public static DeckPreferences getPrefs(DeckProxy deck) { String key = deck.getUniqueKey(); - DeckPreferences prefs = allPrefs.get(key); - if (prefs == null) { - prefs = new DeckPreferences(); - allPrefs.put(key, prefs); - } + DeckPreferences prefs = allPrefs.computeIfAbsent(key, k -> new DeckPreferences()); return prefs; } diff --git a/forge-gui/src/main/java/forge/gamemodes/quest/QuestEventDraft.java b/forge-gui/src/main/java/forge/gamemodes/quest/QuestEventDraft.java index 0da85c1e14c..1a3a2137df2 100644 --- a/forge-gui/src/main/java/forge/gamemodes/quest/QuestEventDraft.java +++ b/forge-gui/src/main/java/forge/gamemodes/quest/QuestEventDraft.java @@ -300,11 +300,7 @@ public class QuestEventDraft implements IQuestEvent { int value; final String boosterName = FModel.getMagicDb().getEditions().get(boosterSet).getName() + " Booster Pack"; - if (MAP_PRICES.containsKey(boosterName)) { - value = MAP_PRICES.get(boosterName); - } else { - value = 395; - } + value = MAP_PRICES.getOrDefault(boosterName, 395); boosterPrices += value; } @@ -529,11 +525,7 @@ public class QuestEventDraft implements IQuestEvent { final String boosterName = booster.getName(); - if (MAP_PRICES.containsKey(boosterName)) { - value = MAP_PRICES.get(boosterName); - } else { - value = 395; - } + value = MAP_PRICES.getOrDefault(boosterName, 395); return value; @@ -961,11 +953,7 @@ public class QuestEventDraft implements IQuestEvent { int value; final String boosterName = FModel.getMagicDb().getEditions().get(boosterSet).getName() + " Booster Pack"; - if (MAP_PRICES.containsKey(boosterName)) { - value = MAP_PRICES.get(boosterName); - } else { - value = 395; - } + value = MAP_PRICES.getOrDefault(boosterName, 395); entryFee += value; diff --git a/forge-gui/src/main/java/forge/gamemodes/quest/bazaar/QuestPetStorage.java b/forge-gui/src/main/java/forge/gamemodes/quest/bazaar/QuestPetStorage.java index f301bf2b42d..84f22c34f4a 100644 --- a/forge-gui/src/main/java/forge/gamemodes/quest/bazaar/QuestPetStorage.java +++ b/forge-gui/src/main/java/forge/gamemodes/quest/bazaar/QuestPetStorage.java @@ -92,11 +92,7 @@ public class QuestPetStorage { * Refactoring this to List list = this.petsBySlot.computeIfAbsent(Integer.valueOf(iSlot), k -> new ArrayList()); * will cause Android not to compile * */ - List list = this.petsBySlot.get(iSlot); - if (null == list) { - list = new ArrayList<>(); - this.petsBySlot.put(iSlot, list); - } + List list = this.petsBySlot.computeIfAbsent(iSlot, k -> new ArrayList<>()); this.petsByName.put(petCtrl.getName(), petCtrl); list.add(petCtrl); } diff --git a/forge-gui/src/main/java/forge/gamemodes/quest/data/QuestAssets.java b/forge-gui/src/main/java/forge/gamemodes/quest/data/QuestAssets.java index 163c2b3e1a3..0805f28f6c2 100644 --- a/forge-gui/src/main/java/forge/gamemodes/quest/data/QuestAssets.java +++ b/forge-gui/src/main/java/forge/gamemodes/quest/data/QuestAssets.java @@ -157,11 +157,8 @@ public class QuestAssets { * @param level int */ public final void setPetLevel(final String name, final int level) { - QuestItemCondition cond = this.combatPets.get(name); - if (null == cond) { - cond = new QuestItemCondition(); // pets have only level that should be serialized for now - this.combatPets.put(name, cond); - } + QuestItemCondition cond = this.combatPets.computeIfAbsent(name, k -> new QuestItemCondition()); + // pets have only level that should be serialized for now cond.setLevel(level); } diff --git a/forge-gui/src/main/java/forge/gui/card/CardPreferences.java b/forge-gui/src/main/java/forge/gui/card/CardPreferences.java index fa9c8df0442..9029fca11f5 100644 --- a/forge-gui/src/main/java/forge/gui/card/CardPreferences.java +++ b/forge-gui/src/main/java/forge/gui/card/CardPreferences.java @@ -28,11 +28,7 @@ public class CardPreferences { public static CardPreferences getPrefs(IPaperCard card) { String cardName = card.getName(); - CardPreferences prefs = allPrefs.get(cardName); - if (prefs == null) { - prefs = new CardPreferences(cardName); - allPrefs.put(cardName, prefs); - } + CardPreferences prefs = allPrefs.computeIfAbsent(cardName, CardPreferences::new); return prefs; }