Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java |比较四个哈希映射_Java_Hashmap_Compare_Size - Fatal编程技术网

Java |比较四个哈希映射

Java |比较四个哈希映射,java,hashmap,compare,size,Java,Hashmap,Compare,Size,我想问你,如何在java中比较四种哈希映射大小。 如果所有HashMap中都有>=2个键,如果它们在同一个hashMap中,我怎么知道呢。。。 谢谢。您可以检查hashmaps的键交叉点的长度: Set<String> commonKeys = new HashSet<>(hashMap1.keySet()); commonKeys.retainAll(hashMap2.keySet()); commonKeys.retainAll(hashMap3.keySet());

我想问你,如何在java中比较四种哈希映射大小。 如果所有HashMap中都有>=2个键,如果它们在同一个hashMap中,我怎么知道呢。。。
谢谢。

您可以检查hashmaps的键交叉点的长度:

Set<String> commonKeys = new HashSet<>(hashMap1.keySet());
commonKeys.retainAll(hashMap2.keySet());
commonKeys.retainAll(hashMap3.keySet());
commonKeys.retainAll(hashMap4.keySet());
commonKeys.size();
Set commonKeys=newhashset(hashMap1.keySet());
commonKeys.retainal(hashMap2.keySet());
commonKeys.retainal(hashMap3.keySet());
commonKeys.retainal(hashMap4.keySet());
commonkey.size();

处理
HashMap
时,应根据
HashMap
键的类型调整
公用键的类型参数,你需要一个
集合

你能添加一个例子和你迄今为止尝试过的代码吗?语言中没有任何东西…必须为此编写一个自定义方法。这不会编译。如果它这样做了,它将破坏hashMap1
@Andreas实际上,
retainal
返回一个布尔值,并且不能被链接。固定的。编辑:关于
备份
映射
,我也通过使用
addAll
而不是使用
addAll()
处理第一个映射的键槽来修复它,只需在
HashSet
的构造函数中给出它。我建议您的示例显示类型参数
字符串
,然后您说OP应该根据需要更改它,而不是在示例中显示糟糕的原始类型。如果OP复制您的示例而不进行更改,它会工作,但不好。若示例有错误的类型参数,简单地复制将迫使OP更改类型,从而确保代码是正确的。