【发布时间】:2020-02-25 17:35:02
【问题描述】:
我想知道是否可以执行以下代码:
_ = name.Split(' ') => names.Count() > 1 ?
new Tuple<string, string>(string.Join(" ", names.Take(names.Count() - 1)), names.Last()) :
new Tuple<string, string>(name, string.Empty)) ;
其中names 是name.Split(' ') 的结果。
如果没有在单独的行中声明它,我不知道如何访问这个结果:
var names = name.Split(' ');
这一行是我想要避免的,但我也不想每次拆分函数时都调用。
有人知道如何解决这个问题,或者是否有可能?
非常感谢。
【问题讨论】:
-
真正的问题是为什么要编写不可读的代码。您认为这样做节省的任何执行时间都被稍后读取和修改此代码所需的时间所浪费。另外,
displayName应该是name吗? -
@CodeCaster 这只是为了知道是否有办法或是否有可能。无论如何,我不觉得它不可读。学习的方法就是尝试。
标签: c# lambda functional-programming