我需要复制一份List作为array.我可以复制列表,然后将其转换为array,但似乎这有一个不必要的步骤.我将它直接复制到一个更有意义array,但我不知道如何.这是带有不必要步骤的版本:
List<T> originalList = GetListOfElements<T>();
T[] copyArray = new List<T>(originalList).ToArray();
Run Code Online (Sandbox Code Playgroud)
是否有可能绕过创建新的步骤List?
幸运的是,list ToArray最符合您的需求,因为它将返回元素的副本而不是相同的元素(阅读链接).注意:只要注意,取决于什么T,object本身可能不一定是copy(例如List<int>不同List<MyClass>).
简单地说:
T[] array = GetListOfElements<T>().ToArray();
Run Code Online (Sandbox Code Playgroud)
这本来是棘手的,如果你不想要复制的元素.