[英]How to split a list in Dart/Flutter [duplicate]
我有一个字符串列表和一个 integer。
int number = 3;
var items = ['foo', 'hey','yo','bar', 'baz', 'qux'];
如何按数字(要输出的列表数)拆分此列表。
Output:
List 1 = ['foo', 'hey']
List 2 = ['yo', 'bar']
List 3 = ['baz', 'qux']
void main(List<String> args) {
var n = 3;
var items = ['foo', 'hey','yo','bar', 'baz', 'qux'];
var m = (items.length / n).round();
var lists = List.generate(n, (i) => items.sublist(m*i, (i+1)*m <= items.length ? (i+1)*m : null));
print(lists);
}
结果:
[[foo, hey], [yo, bar], [baz, qux]]
返回包含开始和结束之间的元素的新列表。
新列表是一个List<E>
,包含此列表中大于或等于 start 且小于 end 的元素,其顺序与它们在此列表中出现的顺序相同。
var colors = ["red", "green", "blue", "orange", "pink"];
print(colors.sublist(1, 3)); // [green, blue]
如果省略 end,则默认为该列表的长度。
print(colors.sublist(1)); // [green, blue, orange, pink]
开始和结束位置必须满足关系0 ≤ start ≤ end ≤ this.length
如果 end 等于 start,则返回列表为空。
执行
List<E> sublist(int start, [int? end]);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.