gpt4 book ai didi

dart - Dart 列表元素中的空值

转载 作者:行者123 更新时间:2023-12-03 03:25:12 25 4
gpt4 key购买 nike

我正在做一个项目,想检查一个列表元素是否为空。例子

List<int> i = [1, 2, 3];
print(i[1]); // this prints 2

但是如果我想打印一个列表元素并且如果它不存在使用 dart null-aware 打印一个默认数字,该怎么办。例子
List<int> i = [1, 2, 3];
print(i[10] ?? 15);
// Also tried
print(i?.elementAt(10) ?? 15);

我希望它打印出 15,因为索引 10 处的元素不存在。不幸的是,上面的代码给了我一个错误。

如何检查列表元素是否不存在并返回默认值

最佳答案

没有优雅的方式来做到这一点,正如您所尝试的那样。 您必须先检查列表长度 ,因为在程序评估 i.elementAt(10) 的那一刻它立即抛出 RangeError 异常。

示例解决方案 1:

if (i.length > 9) { 
print(i?.elementAt(10));
} else {
print(15);
}

示例解决方案 2(更优雅的方式):
print(i.length > 9 ? i?.elementAt(10) : 15);

关于dart - Dart 列表元素中的空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58485955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com