Java 如何从列表列表中提取列表
我有以下清单:Java 如何从列表列表中提取列表,java,Java,我有以下清单: List<List<Integer>> fronts = new ArrayList<>(); List<Integer> f0 = new ArrayList<>(); f0.add(0); f0.add(1); f0.add(2); f0.add(3); fronts.add(f0); List<Integer> f1 = new Arra
List<List<Integer>> fronts = new ArrayList<>();
List<Integer> f0 = new ArrayList<>();
f0.add(0);
f0.add(1);
f0.add(2);
f0.add(3);
fronts.add(f0);
List<Integer> f1 = new ArrayList<>();
f1.add(6);
f1.add(7);
f1.add(8);
f1.add(9);
fronts.add(f1);
List<Integer> f2 = new ArrayList<>();
f2.add(10);
f2.add(11);
f2.add(12);
f2.add(13);
fronts.add(f2);
List fronts=new ArrayList();
列表f0=新的ArrayList();
f0.添加(0);
f0.添加(1);
f0.添加(2);
f0.添加(3);
添加(f0);
列表f1=新的ArrayList();
f1.增加(6);
f1.加入(7);
f1.增加(8);
f1.加入(9);
添加(f1);
列表f2=新的ArrayList();
f2.增加(10);
f2.添加(11);
f2.添加(12);
f2.添加(13);
添加(f2);
我想得到四个列表,其中第一个列表包含每个列表的第一个元素,例如0,6,10
,第二个列表是1,7,11
,依此类推
我该怎么做?您可以创建一个包含所需4个列表的列表 按如下方式操作:
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<List<Integer>> fronts = new ArrayList<List<Integer>>();
List<Integer> f0 = new ArrayList<>();
f0.add(0);
f0.add(1);
f0.add(2);
f0.add(3);
fronts.add(f0);
List<Integer> f1 = new ArrayList<>();
f1.add(6);
f1.add(7);
f1.add(8);
f1.add(9);
fronts.add(f1);
List<Integer> f2 = new ArrayList<>();
f2.add(10);
f2.add(11);
f2.add(12);
f2.add(13);
fronts.add(f2);
List<List<Integer>> result = new ArrayList<List<Integer>>();
for (int i = 0; i < fronts.get(0).size(); i++) {
List<Integer> temp = new ArrayList<Integer>();
for (int j = 0; j < fronts.size(); j++) {
temp.add(fronts.get(j).get(i));
}
result.add(temp);
}
System.out.println(result);
}
}
您可以这样尝试:
for(int i=0; i<fronts.get(0).size();i++){
List<Integer> newList = new ArrayList<Integer>();
for(int j=0; j<fronts.size();j++){
newList.add(fronts.get(j).get(i));
}
System.out.println(newList);
}
用于(int i=0;我能证明你自己在解决这个问题上有什么努力吗?步骤1:询问堆栈溢出,步骤2:接收向下投票,步骤3:删除问题,步骤4:尝试问题它与我已经发布的解决方案有何不同?当我开始处理这个问题时,没有答案。当我发布我的ans时,我没有注意到你的人就在那里。别担心,继续贡献。祝你一切顺利!
for(int i=0; i<fronts.get(0).size();i++){
List<Integer> newList = new ArrayList<Integer>();
for(int j=0; j<fronts.size();j++){
newList.add(fronts.get(j).get(i));
}
System.out.println(newList);
}