0

如果一个 HashSet A 是另一个 HashSet B 的子集,它应该返回 true,否则返回 false。

4

3 回答 3

3

Set.containsAll()做你想做的事:

如果此集合包含指定集合的​​所有元素,则返回 true。如果指定的集合也是一个集合,如果它是这个集合的子集,则此方法返回 true。

于 2012-12-03T09:33:09.250 回答
3

不确定它是否必须是一个严格的子集或者它可以相等。

Set a = ...
Set b = ...

如果可以使用 containsAll

return b.containsAll(a);

或者如果它必须是一个严格的子集

return b.size() > a.size() && b.containsAll(a);

或者你可以

Set tmp = new HashSet(a);
tmp.removeAll(b);
return tmp.isEmpty();
于 2012-12-03T09:33:52.750 回答
2

Set.containsAll 方法应该可以完成这项工作:

B.containsAll(A)
于 2012-12-03T09:32:50.790 回答