是否可以使用列表函数列出所有数组大小(不循环)?
Is it possible to list all array sizes with list functions (without looping)?
我有一个类型为 float[]
的列表。
我永远不知道浮点数组的大小有多大,但我需要知道所有数组的大小。
示例:
List<float[]> f = new List<float[]>();
f.Add(new float[3] { 1f, 5f, 1f });
f.Add(new float[5] { 1f, 5f, 1f, 1f,2f });
两者加起来应该是 32 字节,不是吗?
但是我如何在不循环的情况下计算它呢?我可以用 lambda 或 linq 来做吗?
其他问题:
是否也可以合并这两个元素?
编辑:我的意思是没有 for/foreach while
var size = f.Sum(a => a.Length);
var merged = f.SelectMany(a => a).ToList();
我有一个类型为 float[]
的列表。
我永远不知道浮点数组的大小有多大,但我需要知道所有数组的大小。
示例:
List<float[]> f = new List<float[]>();
f.Add(new float[3] { 1f, 5f, 1f });
f.Add(new float[5] { 1f, 5f, 1f, 1f,2f });
两者加起来应该是 32 字节,不是吗? 但是我如何在不循环的情况下计算它呢?我可以用 lambda 或 linq 来做吗?
其他问题: 是否也可以合并这两个元素?
编辑:我的意思是没有 for/foreach while
var size = f.Sum(a => a.Length);
var merged = f.SelectMany(a => a).ToList();