嘗試在串列中創建串列,如果:
List<String> dataList = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10' , '11', '12', '13', '14', '15', '16', '17', '18' , '19', '20', '21', '22'];
List<int> dataListLength = [5 , 7, 10];
List<List<String>> listList = [];
我想要這樣:
listList[0]-> ['1', '2', '3', '4', '5'],
listList[1] -> ['6', '7', '8', '9', '10' , '11', '12']
listList[2] -> ['13', '14', '15', '16', '17', '18' , '19', '20', '21', '22']
uj5u.com熱心網友回復:
試試下面的代碼。
我想你可以使用這個功能 List.getRange(int, int)
在 Dart 中,您不需要指定串列大小。
void main() {
List<String> dataList = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10' , '11', '12', '13', '14', '15', '16', '17', '18' , '19', '20', '21', '22'];
List<List> listList = [dataList.getRange(0,4).toList(),
dataList.getRange(5,11).toList(),
dataList.getRange(11,21).toList()];
print(listList);
}
uj5u.com熱心網友回復:
試試這個
List<String> dataList = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10' , '11', '12', '13', '14', '15', '16', '17', '18' , '19', '20', '21', '22'];
List<int> dataListLength = [5 , 7, 10];
List<List<String>> listList = [];
int start = 0;
for(var i in dataListLength){
List<String> temp = [];
for(int j=start; j<i start; j ){
temp.add(dataList[j]);
}
listList.add(temp);
start = i;
}
print(listList);
結果
[[1, 2, 3, 4, 5], [6, 7, 8, 9, 10, 11, 12], [13, 14, 15, 16, 17, 18, 19, 20, 21, 22]]
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/408827.html
標籤:
