c# – LINQ将列交换成行
发布时间:2020-12-15 18:07:10 所属栏目:百科 来源:网络整理
导读:有没有一个奇怪的LINQ表达式,可以让我以更简单的方式做以下的事情.我有一个List List double,假设List是2d矩阵中的列,我想将列列表交换到行列表中.我有以下明显的解决方案: int columns = 5;var values; // assume initialised as ListListdouble()var list
有没有一个奇怪的LINQ表达式,可以让我以更简单的方式做以下的事情.我有一个List< List< double>>,假设List是2d矩阵中的列,我想将列列表交换到行列表中.我有以下明显的解决方案:
int columns = 5; var values; // assume initialised as List<List<double>>() var listOfRows = new List<List<double>>(); for (int i = 0; i < columns ; i++) { List<double> newRow = new List<double>(); foreach (List<double> value in values) { newRow.Add(value[i]); } listOfRows.Add(newRow); } 解决方法
您可以轻松地LINQify内部循环:
vector.AddRange(values.Select(value => value [i])); 是否改善可读性完全取决于您! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |