我想返回字符串中最后一个单词的长度。这些单词用空格隔开。
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()
并将其保存到变量中更具扩展性。。。`