我正在为我的一个项目重新创建Space Invaders,并为我的所有入侵者和其他东西使用了List,但我需要使用数组。如何将此列表更改为数组,我不熟悉它们。请参阅下面的代码。
List<PictureBox> listInvaders;
public Form1()
{
InitializeComponent();
InvaderAnim.Start();
listInvaders = new List<PictureBox> {invader1, invader2, invader3, invader4, etc};
非常感谢!
答案 0 :(得分:1)
使用System.Collections.Generic命名空间中定义的ToArray()
方法:
InitializeComponent();
InvaderAnim.Start();
listInvaders = new List<PictureBox> {invader1, invader2, invader3, invader4, etc};
var resultingArray = listInvaders.ToArray();
您也可以使用array initializer,如下所示:
var resultingArray = new PictureBox[] { invader1, invader2, invader3, invader4, etc }
答案 1 :(得分:0)
试试这个,该类型的编译器解析将推断出数组类型。
var listInvaders = new[] {invader1, invader2, invader3, invader4, etc};
否则,使用ToArray()将预先存在的列表转换为相同类型的数组。
答案 2 :(得分:0)
如何将此列表更改为数组
怎么样
var result = listInvaders.ToArray();
为什么不首先创建数组而不是List。将节省内存和时间
var result = new PictureBox[] {invader1, invader2, invader3, invader4, etc};