我想递归迭代一个日期的数字,求和它们,然后计算第一个总和中各个数字的另一个总和.
例如,DOB 1547年8月15日(19/08年8月15日)
1 + 5 + 0 + 8 + 1 + 9 + 4 + 7 = 35
3 + 5 = 8
答案:8
LINQ的.Aggregate()功能对我有很大帮助......
DOB.toString().Aggregate((a,b)=>(int)a+(int)b)
Run Code Online (Sandbox Code Playgroud)
...但结果35 :(
我想要一个递归LINQ调用,结果总是一位数.
string result = DOB.ToString("ddMMyyyy");
while (result.Length > 1)
result = result.Sum(c => int.Parse(c.ToString()))
.ToString();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
142 次 |
| 最近记录: |