调用负数文字时,abs()
函数无效。
var y = -123.11.abs(); // prints -123.11
但是其他功能,例如floor()
可以正常工作
var y = -123.11.floor(); // prints -123
如果我将负数文字括在括号中,则效果很好
var y = (-123.11).abs(); // prints 123.11
任何帮助您了解这种行为的帮助。
我使用的飞镖版本是Dart VM version: 2.2.1-dev.0.0.flutter-571ea80e11 (Mon Mar 4 19:30:53 2019 +0000) on "windows_x64"
更新:
注意:floor()
应用于@HighPerformanceMark指向的负数时无法正常工作
答案 0 :(得分:2)
根据Operator precedence和Dart Language Specification -123.11.abs()
与-((123.11).abs())
相同。