62,635
社区成员




public static void main(String[] args) {
List<Integer> smallList1 = Arrays.asList(1, 2, 3);
List<Integer> smallList2 = Arrays.asList(4, 5, 6);
List<Integer> smallList3 = Arrays.asList(7, 8, 9);
List<List<Integer>> bigList = Arrays.asList(smallList1, smallList2, smallList3);
List<List<Integer>> newBigList = convert(bigList);
System.out.println(newBigList); // 输出:[[1, 4, 7], [2, 5, 8], [3, 6, 9]]
}
private static List<List<Integer>> convert(List<List<Integer>> bigList) {
List<List<Integer>> newBigList = new ArrayList<>();
int size = bigList.get(0).size();
for (int i = 0; i < size; i++) {
List<Integer> newSmallList = new ArrayList<>();
for (List<Integer> smallList : bigList) {
newSmallList.add(smallList.get(i));
}
newBigList.add(newSmallList);
}
return newBigList;
}
如果我的回答解决了您的问题,麻烦结贴给点积分,谢谢^_^
public void SortList(List<List<string>> sourceList, out List<List<string>> sortList)
{
sortList = new List<List<string>>();
if (sourceList == null)
return;
var sourceLenCollection = sourceList.Select(x => x.Count);
for (int i = 0; i < sourceLenCollection.Max(); i++)
{
var innerList = new List<string>();
foreach (var source in sourceList)
{
if (source.Count <= i)
continue;
innerList.Add(source[i]);
}
sortList.Add(innerList);
}
}