0

我得到了这些数组:

        String[] s0={"A","A","B","B","A","C"};

        String[] s11={"A","30"};
        String[] s12={"B","20"};
        List<String[]> l1=new ArrayList<String[]>();
        l1.add(s11);
        l1.add(s12);

        String[] s21={"B","10"};
        String[] s22={"B","20"};
        List<String[]> l2=new ArrayList<String[]>();
        l2.add(s21);
        l2.add(s22);

        String[] s31={"C","2"};
        String[] s32={"A","10"};
        String[] s33={"A","3"};
        List<String[]> l3=new ArrayList<String[]>();
        l3.add(s31);
        l3.add(s32);
        l3.add(s33);

        //result:
        String[] s1={"A","30","","10"};
        String[] s2={"A","","","3"};
        String[] s3={"B","20","10",""};
        String[] s4={"B","","20",""};
        String[] s5={"A","","",""};
        String[] s6={"C","","","2"};

结果应该有6个字符串数组,每个字符串数组应该有4个字符串对应4列:这很难,你知道怎么做吗?

4

1 回答 1

1

将数组 s0 视为表条目(行的第一列)的列表,按顺序迭代它们中的每一个。s0 每个条目的其他 3 列值将是列表中数组中第 N 次出现的值 s0 元素。如果在第 N 次出现时没有元素,则考虑将“”作为列值。形成的每一行都将再次成为一个包含所有列值的数组。您需要维护列表 l1、l2 和 l3 中数组的顺序。这是实现您的要求的高级逻辑。希望这会有所帮助。

于 2013-03-31T15:14:12.917 回答