是否可以使用级联对变量的两个属性进行操作



我想返回字符串中最后一个单词的长度。这些单词用空格隔开。

return s.trimRight().length - s.trimRight().lastIndexOf(' ') - 1;

我想消除两次调用trimRight()的需要,我希望级联能帮助我做到这一点,同时保持解决方案为单行。但我尝试了这样的东西,但它是无效的(出于明显的原因(:

return (s.trimRight())..length - ..lastIndexOf(' ') - 1;

我知道我可以通过分配操作来完成,比如:

return (s = s.trimRight()).length - s.lastIndexOf(' ') - 1;

但我的问题是,它可以在没有使用级联的任务的情况下完成吗?

我希望你能做这样的事情,但不,目前用dart是不可能的。

现在,从技术上讲,您可以执行return s.trimRight().split(' ').last.length);,但这比计算s.trimRight()并将其保存到变量中更具扩展性。。。`

最新更新