我所在的环境中包含RollingWindow
类,其中RollingWindow<T>
可以是任何类型/对象的集合。
我想创建一个C#方法,将RollingWindow<T>
转换为List<T>
。
基本上我会以下列方式使用它:
List<int> intList = new List<int>();
List<Record> = recordList = new List<Record>();
RollingWindow<int> intWindow = new RollingWindow<int>(20); //20 elements long
RollingWindow<Record> = recordWindow = new RollingWindow<Record>(10); //10 elements long
ConvertWindowToList(intList, intWindow); // will populate intList with 20 elements in intWindow
ConvertWindowToList(intList, intWindow); // will populate recordList with 10 elements in recordWindow
有关如何在c#中执行此操作的任何想法?
答案 0 :(得分:1)
基于RollingWindow<T>
实现IEnumerable<T>
的假设;
List<int> intList = intWindow.ToList();
List<Record> recordList = recordWindow.ToList();
将起作用
答案 1 :(得分:-1)
我认为RollingWindow<T>
来自IEnumerable<T>
。
所以这可能是:
var enumerableFromWin = (IEnumerable<int>) intWindow;
intList = new List<int>(enumerableFromWin);
var enumRecFromWin = (IEnumerable<Record>) recordWindow;
recordList = new List<Record>(enumRecFromWin);