【发布时间】:2020-11-13 13:02:46
【问题描述】:
我有这个包含两个列表的哈希表:
Hashtable<List<String>, List<String>> aliases = new Hashtable<>();
aliases.put(List.of("name1", "name2"), List.of("John", "15"));
aliases.put(List.of("name3", "name4"), List.of("William", "23"));
String args = "name1";
我想看看 args 变量是否存在于列表中并获取它
【问题讨论】:
-
您可以遍历哈希表并检查每个键是否
contains是您的args值,但是通过这种方式使用它会失去哈希表的好处。 -
您能否详细说明您打算如何使用此表?我想不出使用 List 作为哈希键有用的用例。
-
@MDK 这是一个不和谐的机器人:aliases.put(List.of("commandname", "commandname2"), List.of("commanddescription", "usage"));但如果这是最好的方法,我想知道
-
如果您的主要用途是查找哪个别名指向哪个命令,最好分别映射每个别名。然后一个简单的
get(alias)将找到正确的命令。如果您的命令只包含名称和用法,则将它们包装到具有这些属性的类中可能比使用列表更有用。