我正在尝试在 java 中创建一个笛卡尔积方法,该方法接受集合作为参数并返回一个集合对。我的代码将参数集转换为数组,然后进行笛卡尔积,但我无法将其添加回我想要返回的集合对。有没有更简单的方法来做到这一点?提前致谢。
public static <S, T> Set<Pair<S, T>> cartesianProduct(Set<S> a, Set<T> b) {
Set<Pair<S, T>> product = new HashSet<Pair<S, T>>();
String[] arrayA = new String[100];
String[] arrayB= new String[100];
a.toArray(arrayA);
b.toArray(arrayB);
for(int i = 0; i < a.size(); i++){
for(int j = 0; j < b.size(); j++){
product.add(arrayA[i],arrayB[j]);
}
}
return product;
}