我有两个地图,其中一个 String 作为键,Set 作为它的值。这两个映射可以共享相同的键。如果两个地图具有相同的键,我正在尝试将两个 Set 值合并在一起。问题是,第二个映射可能为空,并且由于并非所有键都在两个映射之间共享,因此集合也可能为空。我想出了几个选项,但它们看起来都很乱。想知道是否有人有更有效/更漂亮的方法。这是我到目前为止所拥有的:
Set<String> mergedSet = (firstMap.containsKey(commonKey)) ? firstMap.get(commonKey) : new HashSet<String>();
mergedSet.addAll(secondMap != null && secondMap.containsKey(commonKey) ? secondMap.get(commonKey) : new HashSet<String>());