如何计算两个集合的交点?

说,有两个哈希集,如何计算它们的交集?

Set<String> s1 = new HashSet<String>();

Set<String> s2 = new HashSet<String>();

S1 INT S2 ?

回答:

使用以下retainAll()方法Set

Set<String> s1;

Set<String> s2;

s1.retainAll(s2); // s1 now contains only elements in both sets

如果要保留集合,请创建一个新集合以保存交集:

Set<String> intersection = new HashSet<String>(s1); // use the copy constructor

intersection.retainAll(s2);

该的javadocretainAll()说,这正是你想要的:

仅保留此集合中包含在指定集合中的元素(可选操作)。换句话说,从该集合中删除所有未包含在指定集合中的元素。如果指定的集合也是一个集合,则此操作将有效地修改此集合,以使其值为两个集合的交集。

以上是 如何计算两个集合的交点? 的全部内容, 来源链接: utcz.com/qa/406337.html

回到顶部