共同学习Java源代码-多线程与并发-ConcurrentMap接口

这个接口是ConcurrentHashMap实现的接口 ConcurrentHashMap是开发者必须掌握的类 

public interface ConcurrentMap<K, V> extends Map<K, V>

这个接口继承自Map接口


    @Override
    default V getOrDefault(Object key, V defaultValue) {
        V v;
        return ((v = get(key)) != null) ? v : defaultValue;
    }

用default关键字在接口中提供具体实现逻辑 这里是重写父接口的抽象方法 

调用get方法判断键对应值是否为空 不为空就返回值 否则返回参数提供的默认值


     V putIfAbsent(K key, V value);

在key不存在的情况下插入键值对的方法


    boolean remove(Object key, Object value);

删除键值对的方法


    boolean replace(K key, V oldValue, V newValue);

替代方法 但键值对要一一对应


    V replace(K key, V value);

替代方法 键值对不用一一对应


那些涉及lambda表达式的方法暂时不说

这个接口介绍完毕






展开阅读全文

没有更多推荐了,返回首页