使用ToArray()将列表转换为数组

Jod*_*dll 8 c# error-handling list type-conversion toarray

我创建了一个名为listItem的类和以下列表:

List<listItem> myList = new List<listItem>();
Run Code Online (Sandbox Code Playgroud)

在我的代码中的某个时刻,我想将其转换为数组,从而使用:

listItem[] myArray = myList.ToArray();
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不起作用,我收到此错误消息:

Cannot convert [...] listItem[] to [...] List<listItem>
Run Code Online (Sandbox Code Playgroud)

我试图解决这个问题,但非常失败......

提前致谢.

编辑:我的坏,我写的第一个代码行确实是错误的!

实际上,上面的所有代码都运行良好.我的错误是由于我的功能:

List<listItem> myFunction()
Run Code Online (Sandbox Code Playgroud)

返回myArray,因此转换问题......现在已经修复了.:)

谢谢大家的答案.

Gab*_*ber 13

这是错误(正如Darkshadw和Jon Skeet所指出的那样)

listItem myList = new List<listItem>();
Run Code Online (Sandbox Code Playgroud)

您正在将List的值分配给listItem.

替换为

List<listItem> myList = new List<listItem>();
Run Code Online (Sandbox Code Playgroud)

创建listItem列表.然后

listItem[] myArray = myList.ToArray();
Run Code Online (Sandbox Code Playgroud)

将工作.