Java 合并两个列表并通过递归打印出新列表

Java 合并两个列表并通过递归打印出新列表,java,list,recursion,Java,List,Recursion,因此,我有两个列表(任务的主要部分,不能按代码更改任何内容) publicstaticvoidmain(字符串[]args){ 列表为=新建LinkedList(); 对于(int i=7;i>=1;i-=2)as.add(i); List bs=新链接列表(); 对于(int i=2;i这条线导致无限循环: for (int i = 2; i <= 6; i -= 2) bs.add(i); for(int i=2;i哦,天哪,非常感谢你。在使用java仅仅两个月之后,很难看到像这样

因此,我有两个列表(任务的主要部分,不能按代码更改任何内容)

publicstaticvoidmain(字符串[]args){
列表为=新建LinkedList();
对于(int i=7;i>=1;i-=2)as.add(i);
List bs=新链接列表();

对于(int i=2;i这条线导致无限循环:

 for (int i = 2; i <= 6; i -= 2) bs.add(i);

for(int i=2;i哦,天哪,非常感谢你。在使用java仅仅两个月之后,很难看到像这样的小错误。:)
public static String serialize(List<Integer> vs, String sep){
    if (vs.isEmpty()) return "";
    if (vs.size() == 1) return vs.get(0) + "";
    return vs.remove(0) + sep + serialize(vs, sep);
}
    public static List<Integer> zip(List<Integer> vs, List<Integer> ws){
    List<Integer> cs = new LinkedList<Integer>();
    return  zip(vs, ws, cs);

}

public static List<Integer> zip(List<Integer> vs, List<Integer> ws, List<Integer> cs){
    ListIterator<Integer> e = vs.listIterator();
    if (e.hasNext()) {
        cs.add(e.next());
        vs.remove(0);
        zip(ws, vs, cs);
    }
    return cs; 
}
 for (int i = 2; i <= 6; i -= 2) bs.add(i);