设置交集()函数|番石榴| Java
番石榴的set . interface()返回两个集合的交集的 不可修改视图 。返回的集合包含两个支持集合包含的所有元素。返回集合的迭代顺序与集合 1 的迭代顺序相匹配。
语法:
public static <E>
Sets.SetView<E>
intersection(Set<E> set1, Set<?> set2)
返回值:这个方法返回两个集合的交集的不可修改的视图。
以下示例说明了集合交集方法的工作原理:
例 1:
// Java code to show implementation
// of Guava's Sets.intersection() method
import com.google.common.collect.Sets;
import java.util.Set;
class GFG {
// Driver's code
public static void main(String[] args)
{
// Creating first set
Set<Integer>
set1 = Sets.newHashSet(10, 20, 30, 40, 50);
// Creating second set
Set<Integer>
set2 = Sets.newHashSet(30, 50, 70, 90);
// Using Guava's Sets.intersection() method
Set<Integer>
answer = Sets.intersection(set1, set2);
// Displaying the intersection of set1 and set2
System.out.println("Set 1: "
+ set1);
System.out.println("Set 2: "
+ set2);
System.out.println("Set 1 intersection Set 2: "
+ answer);
}
}
输出:
Set 1: [40, 10, 50, 20, 30]
Set 2: [50, 90, 30, 70]
Set 1 intersection Set 2: [50, 30]
例 2:
// Java code to show implementation
// of Guava's Sets.intersection() method
import com.google.common.collect.Sets;
import java.util.Set;
class GFG {
// Driver's code
public static void main(String[] args)
{
// Creating first set
Set<String>
set1 = Sets.newHashSet("G", "e", "e", "k", "s");
// Creating second set
Set<String>
set2 = Sets.newHashSet("g", "f", "G", "e");
// Using Guava's Sets.intersection() method
Set<String>
answer = Sets.intersection(set1, set2);
// Displaying the intersection of set1 and set2
System.out.println("Set 1: "
+ set1);
System.out.println("Set 2: "
+ set2);
System.out.println("Set 1 intersection Set 2: "
+ answer);
}
}
输出:
Set 1: [k, s, e, G]
Set 2: [e, f, g, G]
Set 1 intersection Set 2: [e, G]
注意:当 set1 是两个 set 中较小的一个时,返回的视图表现稍好。如果你有理由相信你的一套通常会比另一套小,先通过它。
版权属于:月萌API www.moonapi.com,转载请注明出处