Class GroupMap

All Implemented Interfaces:
Serializable, Cloneable, Map<String,LinkedHashMap<String,String>>

public class GroupMap extends LinkedHashMap<String,LinkedHashMap<String,String>>
基于分组的Map
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Constructor Details

    • GroupMap

      public GroupMap()
  • Method Details

    • get

      public String get(CharSequence group, CharSequence key)
      获取分组对应的值,如果分组不存在或者值不存在则返回null
      Parameters:
      group - 分组
      key - 键
      Returns:
      值, 如果分组不存在或者值不存在则返回null
    • size

      public int size()
      总的键值对数
      Specified by:
      size in interface Map<String,LinkedHashMap<String,String>>
      Overrides:
      size in class HashMap<String,LinkedHashMap<String,String>>
      Returns:
      总键值对数
    • put

      public String put(String group, String key, String value)
      将键值对加入到对应分组中
      Parameters:
      group - 分组
      key - 键
      value - 值
      Returns:
      此key之前存在的值, 如果没有返回null
    • putAll

      public GroupMap putAll(String group, Map<? extends String,? extends String> m)
      加入多个键值对到某个分组下
      Parameters:
      group - 分组
      m - 键值对
      Returns:
      this
    • remove

      public String remove(String group, String key)
      从指定分组中删除指定值
      Parameters:
      group - 分组
      key - 键
      Returns:
      被删除的值, 如果值不存在, 返回null
    • isEmpty

      public boolean isEmpty(String group)
      某个分组对应的键值对是否为空
      Parameters:
      group - 分组
      Returns:
      是否为空
    • isEmpty

      public boolean isEmpty()
      是否为空,如果多个分组同时为空,也按照空处理
      Specified by:
      isEmpty in interface Map<String,LinkedHashMap<String,String>>
      Overrides:
      isEmpty in class HashMap<String,LinkedHashMap<String,String>>
      Returns:
      是否为空, 如果多个分组同时为空, 也按照空处理
    • containsKey

      public boolean containsKey(String group, String key)
      指定分组中是否包含指定key
      Parameters:
      group - 分组
      key - 键
      Returns:
      是否包含key
    • containsValue

      public boolean containsValue(String group, String value)
      指定分组中是否包含指定值
      Parameters:
      group - 分组
      value - 值
      Returns:
      是否包含值
    • clear

      public GroupMap clear(String group)
      清除指定分组下的所有键值对
      Parameters:
      group - 分组
      Returns:
      this
    • keySet

      public Set<String> keySet(String group)
      指定分组所有键的Set
      Parameters:
      group - 分组
      Returns:
      键Set
    • values

      public Collection<String> values(String group)
      指定分组下所有值
      Parameters:
      group - 分组
      Returns:
    • entrySet

      public Set<Map.Entry<String,String>> entrySet(String group)
      指定分组下所有键值对
      Parameters:
      group - 分组
      Returns:
      键值对