Вы можете достичь этого, используя Google's Guava library
. Следующее объяснение приводится ниже с помощью примера:
// Set a
Set<String> a = new HashSet<String>();
a.add("x");
a.add("y");
a.add("z");
// Set b
Set<String> b = new HashSet<String>();
b.add("x");
b.add("p");
b.add("q");
Теперь вычисляем пересечение двух множеств в Java:
Set<String> intersection = Sets.intersection(a, b);
System.out.printf("Intersection of two Set %s and %s in Java is %s %n",
a.toString(), b.toString(), intersection.toString());
Выход: Intersection of two Set [z, y, x] and [q, p, x] in Java is [x]
Аналогично, вычисление объединения двух множеств в Java:
Set<String> union = Sets.union(a, b);
System.out.printf("Union of two Set %s and %s in Java is %s %n",
a.toString(), b.toString(), union.toString());
Выход: Union of two Set [z, y, x] and [q, p, x] in Java is [q, p, x, z, y]
Подробнее о библиотеке гуавы можно прочитать на https://google.github.io/guava/releases/18.0/api/docs/
Чтобы добавить библиотеку гуавы в свой проект, вы можете посмотреть https://stackoverflow.com/a/4648947/8258942