0
import java.util.*;

public class PossibilityGame
{
    private  List<String> list1, list2, list3, list4;

    public PossibilityGame()
    {

        list1 = new ArrayList();
        list1.add("one");
        list1.add("two");
        list1.add("three");
        list1.add("four");

        list2 = new ArrayList();
        list2.add("red");
        list2.add("yellow");
        list2.add("green");
        list2.add("white");

        list3 = new ArrayList();
        list3.add("shirt");
        list3.add("T-Shirt");
        list3.add("denim");
        list3.add("skirt");
        list3.add("short");

        list4 = new ArrayList();
        list4.add("karate");
        list4.add("tennis");
        list4.add("foot ball");
        list4.add("chess");

    }

    void generatePossibilities()
    {
        //Possibility Method Goes here
    }

    public static void main(String[]args)
    {
        System.out.println("Generating Possibilities");

        PossibilityGame p = new PossibilityGame();
        p.generatePossibilities();

    }
}

在这里,我有 4 个数组列表,每个包含 4 个字符串。我想生成可以打印这些字符串的可能性列表。举个例子,看看下面

one, red, shirt, karate //这里,“one”取自list1,位置1;红色取自 list2,位置 1;衬衫取自 list3 位置 1;空手道取自 list4 location1

one,yellow,T-shirt,tennis //这里,“一”取自list1,位置1;黄色取自 list2,位置 2;T 恤取自 list3 位置 2;网球取自 list4 location2

我想生成上述示例的所有可能性。请帮忙。谢谢

4

2 回答 2

3
for(String s1 : list1)
    for(String s2 : list2)
        for(String s3 : list3)
            for(String s4 : list4)
                System.out.println(String.format("%s %s %s %s", s1, s2, s3, s4));
于 2012-05-16T15:02:27.203 回答
0

我会使用四个嵌套的 for 循环。

于 2012-05-16T15:01:13.700 回答