flutter - 为什么检查 double 是否为 NaN 在 Dart 中不起作用?
问题描述
有没有一种工作方法来检查双变量是否为 NaN?
我试过:
variable.isNaN
variable == double.nan
这里是完整的代码:
bool isValidQuantity(String s) {
double converted = toDouble(s);
if (converted == double.nan || converted < 0) {
return false;
}
return true;
}
toDouble()
是库验证器版本 2.0.0+1 的功能
它只是double.nan
在这种情况下返回,所以我不明白为什么isValidQuantity()
函数不返回 false
解决方案
它工作正常。但是,您可能想要初始化您的变量,因为在 dart 中一切都是 Object(任何 int、float、bool 等),并且对象的默认值为Null。
var myVar = 0.0;
if (myVar.isNaN)
print('Not a number');
else
print('${myVar} is a number');
推荐阅读
- terraform - 无法通过 terraform 为 Azure 虚拟机设置动态 IP
- types - f# 表达式的类型
- kotlin - 下面代码的 reader.next()[0] 行中 [0] 的作用是什么
- c - 为了让我的 C 程序更加用户友好,需要进行哪些更改?
- c# - 不支持 WCF 服务操作类型
- javascript - Nodejs,如何在同一行显示和更新文本,例如运行时钟或下载速度?
- perl - 我可以用perl中的子类比较来调用超类排序吗?
- qt - 如果在 QWidget 中创建 QQuickWidget,则 Qt qml 崩溃
- html - 如何创建包含 4 个部分的页面布局?
- kubernetes - kubernetes Pod 的 readinessProbe 出错但端点未从服务中删除