在開發的過程中,我們偶爾會遇到需要對集合進行高階操作的場景。
如差集、聯集、補集等,但 Java 本身並沒有提供這些方法。
那我們要用的時候怎麽辦呢?
其實很多工具包都提供了現成的方法,
比如
apache
的
commons-lang3
工具包,
範例程式碼如下:
import org.apache.commons.collections4.CollectionUtils;
/**
* 有時候我們需要對已有的兩個集合進行操作,比如取交集或者聯集等。
*/
@SpringBootTest
public classMainApplicationTest {
@Test
publicvoidtestCompare() {
List<Integer> list = newArrayList<>();
list.add(2);
list.add(1);
list.add(3);
List<Integer> list2 = newArrayList<>();
list2.add(2);
list2.add(4);
//獲取聯集
Collection<Integer> unionList = CollectionUtils.union(list, list2);
System.out.println(unionList);
//獲取交集
Collection<Integer> interpList = CollectionUtils.interp(list, list2);
System.out.println(interpList);
//獲取交集的補集
Collection<Integer> disjunctionList = CollectionUtils.disjunction(list, list2);
System.out.println(disjunctionList);
//獲取差集
Collection<Integer> subtractList = CollectionUtils.subtract(list, list2);
System.out.println(subtractList);
}
}
完整程式碼片段來源於程式碼小抄,歡迎點選進入小程式閱讀!
線上存取:https://www.codecopy.cn/post/10zoqu
更多優質程式碼歡迎進入小程式檢視!
往期推薦