我正在使用Dart键盘使用子列表显示列表项,但是我遇到范围错误,这是我的代码,请帮助我。
void main() {
var list = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q','f','e','y'];
for(int i=0;i<list.length;i++) {
if(i.isEven && i<list.length-1)
print(list.sublist(i,i+2));
else
print(list.sublist(i,i+3));
}
}
答案 0 :(得分:2)
您尝试使用i + 3
访问列表之外的某些项目。使用i<list.length-2
将允许编译器在尝试打印值之前检查项目是否在列表中。
void main() {
var list = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q'];
for(int i=0;i<list.length;i++) {
if(i.isEven && i<list.length-2)
print(list.sublist(i,i+2));
else if(i<list.length-2)
print(list.sublist(i, i+3));
}
}