Java:根据给定的细节生成可能性列表

时间:2012-05-16 14:58:44

标签: java math arraylist

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个arraylists,每个包含4个字符串。我想生成这些字符串可以打印的可能性列表。有关示例,请查看以下内容

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

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

我希望像上面的例子那样产生所有可能性。请帮忙。谢谢

2 个答案:

答案 0 :(得分: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));

答案 1 :(得分:0)

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