Class FunctionMap<K,V>

Type Parameters:
K - 键类型
V - 值类型
All Implemented Interfaces:
Serializable, Cloneable, Iterable<Map.Entry<K,V>>, Map<K,V>, Wrapper<Map<K,V>>, Provider

public class FunctionMap<K,V> extends TransMap<K,V>
自定义键值函数风格的Map
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Constructor Details

    • FunctionMap

      public FunctionMap(Supplier<Map<K,V>> mapFactory, Function<Object,K> keyFunc, Function<Object,V> valueFunc)
      构造 注意提供的Map中不能有键值对,否则可能导致自定义key失效
      Parameters:
      mapFactory - Map,提供的空map
      keyFunc - 自定义KEY的函数
      valueFunc - 自定义value函数
    • FunctionMap

      public FunctionMap(Map<K,V> emptyMap, Function<Object,K> keyFunc, Function<Object,V> valueFunc)
      构造 注意提供的Map中不能有键值对,否则可能导致自定义key失效
      Parameters:
      emptyMap - Map,提供的空map
      keyFunc - 自定义KEY的函数
      valueFunc - 自定义value函数
  • Method Details

    • customKey

      protected K customKey(Object key)
      根据函数自定义键
      Specified by:
      customKey in class TransMap<K,V>
      Parameters:
      key - KEY
      Returns:
      驼峰Key
    • customValue

      protected V customValue(Object value)
      Description copied from class: TransMap
      自定义值
      Specified by:
      customValue in class TransMap<K,V>
      Parameters:
      value - 值
      Returns:
      自定义值