所以我正在尝试使用try
/catch
子句,但我不明白为什么会发生这种情况(正常与否):
void main() {
List someList = [1,2,3];
try {
for (var x in someList) {
try {
for (var z in x) {
}
} catch(e) {
throw new Exception('inside');
}
}
} catch(e) {
throw new Exception('outside');
}
}
所以你看我试图在一个循环内做一个循环,但故意someList
不是 a List<List>
,因此嵌套循环会抛出一个错误('inside'错误),因为1
是一个int
,而不是一个List
。
情况就是这样,但发生的情况是它引发了“外部”错误。
这是正常的吗?如果是这样,我哪里出错了?