请教高手,怎样让集合中的后面一个元素减前面一个元素

zenghf7878 2014-11-26 09:14:12
如{10,15,17,27}变成{5,2,10},就是后面一个元素减去前面一元素,形成一个新的集合。
...全文
523 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
exception92 2014-11-26
  • 打赏
  • 举报
回复

int[] intArray = new int[] { 10, 15, 17, 27 };
            IEnumerable<int> intArray1 = intArray.Take(intArray.Length - 1);
            IEnumerable<int> intArray2 = intArray.Skip(1);
            var temp2 = intArray1.Zip(intArray2, (x, y) =>
                y - x
            );
q107770540 2014-11-26
  • 打赏
  • 举报
回复
如果用LINQ来做,我想还是有更 ·优雅·的方式来实现的:
	int[] intArray = new int[] { 10, 15, 17, 27 };
	var result = new List<int>();
	intArray.Aggregate((x,y)=> {result.Add(y-x); return y;});

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧