Я хочу, чтобы этот метод работал для любого заданного количества аргументов, я могу сделать это с помощью генерации кода (с большим количеством уродливого кода), можно ли это сделать с помощью рекурсии? если да то как? Я понимаю рекурсию, но я не знаю, как это написать.
private static void allCombinations(List<String>... lists) {
if (lists.length == 3) {
for (String s3 : lists[0]) {
for (String s1 : lists[1]) {
for (String s2 : lists[2]) {
System.out.println(s1 + "-" + s2 + "-" + s3);
}
}
}
}
if (lists.length == 2) {
for (String s3 : lists[0]) {
for (String s1 : lists[1]) {
System.out.println(s1 + "-" + s3);
}
}
}
}