Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java中生成所有可能字符串的通用循环_Java - Fatal编程技术网

java中生成所有可能字符串的通用循环

java中生成所有可能字符串的通用循环,java,Java,我自己很难创建一些通用for循环,因为我的代码是用java编写的。假设我有M个字符串数组列表,每个数组列表s_I有x_I成员。我想生成所有可能的字符串,这样字符串的第一部分来自第一个集合,字符串的第二部分来自第二个集合,并且 例如,下面有3个在编程时未知的列表: |s_0 |=x_0=3[a1,a2,a3] |s|1 |=x|1=5:[b1、b2、b3、b4、b5] |s_2 |=x_2=2:[c1,c2] 我想生成这些字符串顺序并不重要: 字符串:[a1b1c1,a1b1c2,a1b2c1,…

我自己很难创建一些通用for循环,因为我的代码是用java编写的。假设我有M个字符串数组列表,每个数组列表s_I有x_I成员。我想生成所有可能的字符串,这样字符串的第一部分来自第一个集合,字符串的第二部分来自第二个集合,并且

例如,下面有3个在编程时未知的列表:

|s_0 |=x_0=3[a1,a2,a3]

|s|1 |=x|1=5:[b1、b2、b3、b4、b5]

|s_2 |=x_2=2:[c1,c2]

我想生成这些字符串顺序并不重要:

字符串:[a1b1c1,a1b1c2,a1b2c1,…,a3b5c2]

您可以使用。例如,这将给出所有组合AAA、AAB、…、CCC


在您的情况下,必须为参数传递s_0、s_1、s_2。

您想要它们的所有置换吗?提示的可能重复:定义两个集合之间的叉积,并推广到三个。
final Set<String> set = new HashSet<>();
set.add("A");
set.add("B");
set.add("C");
final Set<List<String>> sets = Sets.cartesianProduct(set, set, set);