C#(Unity环境)中如何将float列表添加到另一float列表
错误原因
List<T>.Add() 方法仅用于添加单个T类型元素,你传入了完整的List<float>类型对象xfloats,类型不匹配所以触发CS1503报错。
正确实现
调用List<T>自带的AddRange()方法,即可一次性将另一个集合的所有元素追加到当前列表末尾:
List<float> tempList = new List<float>(); // 替换原有Add调用即可 tempList.AddRange(xfloats);
冗余代码优化提示
你现有转换float列表的代码中外层的for循环是完全多余的:LINQ的Select操作已经遍历了整个DataServerManager.instance.x集合,外层for循环只会重复执行N次完全相同的赋值逻辑,没有任何作用,可以直接删除,简化后的转换代码如下:
private List<Single> xfloats; // 去掉外层冗余for循环即可 xfloats = DataServerManager.instance.x .Select(str => (ok: Single.TryParse(str, out Single f), f)) .Where(t => t.ok) .Select(t => t.f) .ToList();
内容的提问来源于stack exchange,提问作者newbe decor
相关产品推荐
相关产品推荐

