如何在 Map 中用 computeIfAbsent() 替换 get() 函数?

How to replace the get() function with computeIfAbsent() in a Map?

作为 Sonarcloud 分析的结果,建议我应该在定义为 Map 的侦听器上使用 computeIfAbsent() 方法而不是 get()。由于我不熟悉这种方法,有人知道如何正确重构以下 java 代码指示的方法,以便正确使用 computeIfAbsent() 而不是 get() 吗?

public void addListener(String event, EventListener listener) {
    List<EventListener> eventListeners = listeners.get(event);
    if (eventListeners == null) {
        eventListeners = new ArrayList<>();
        listeners.put(event, eventListeners);
    }
    eventListeners.add(listener);
}

这就是你想要的?

listeners.computeIfAbsent(event, ignoreMe -> new ArrayList<>()).add(listener);