我在 UI 表单中的每一行之后将以下内容添加到 HashMap 集合中
声明
Map<String, List<String>> map = new HashMap<String, List<String>>();
List<String> valSetOne = new ArrayList<String>();
代码片段
valSetOne.add("BMW");
valSetOne.add("Audi");
map.put("A1", valSetOne);
当我在 UI 的第二行时,我想检查上面的组合 存在于 HashMap 集合中。
如何检查每一行中值的组合?
最佳答案
如果您需要检查值是否存在的性能并且不关心每行中的顺序,您可以使用 Set 接口(interface)并使用 HashSet 而不是 List
Map<String, Set<String>> map = new HashMap<String, Set<String>>();
Set<String> valSetOne = new HashSet<String>();
检查,使用
Set<String> set= map.get("A1");//returns null if key does not exists(you also use containsKey() to check if key exists)
set.contains("value")
如果你不需要性能,你可以使用
List<String> valSetOne = new ArrayList<String>();
List<String> list = map.get("A1");//returns null if key does not exists(you also use containsKey() to check if key exists )
list .contains("value") to check if it exists
关于Java 集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42087604/