It's a common pattern to test the result of a ``++java.util.Map.get()++`` against ``++null++`` or calling ``++java.util.Map.containsKey()++`` before proceeding with adding or changing the value in the map. However the ``++java.util.Map++`` API offers a significantly better alternative in the form of the ``++computeIfPresent()++`` and ``++computeIfAbsent()++`` methods. Using these instead leads to cleaner and more readable code.
*Note* that this rule is automatically disabled when the project's ``++sonar.java.source++`` is not 8.
This rule will not raise an issue when trying to add ``++null++`` to a map, because ``++computeIfAbsent++`` will not add the entry if the value returned by the function is ``++null++``.