如dart文章所述:
".."语法调用一个方法(或setter或getter),但会丢弃结果,而返回原始接收器.
所以我认为这是可行的:
myList..clear().addAll(otherList);
这让我犯了一个错误,我无法拨打null
的.addAll
.
显然,.
先于..
,所以.clear()
中的result调用了.addAll
.
我想现在我有两种可能来写这个:
-
myList..clear()..addAll(otherList);
个 -
(myList..clear()).addAll(otherList);
(如果我想得到.addAll()
的结果.
对吗?如果是,为什么决定给予.
优先权?这似乎很违反直觉.是为了避免这样的语法:myList(..clear().useResultOfClear()).addAll(otherList);
吗?