问题是列表是我的一个类的类型所以我不能简单地做数组.. 这是我的代码:
public List<PhoneBookCore> elements = new List<PhoneBookCore>();
这是班级:
{
abstract class PhoneBookCore
{
protected string _group;
public PhoneBookCore(string group)
{
this._group = group;
}
public abstract void Add(PhoneBookCore d);
public abstract void Remove(PhoneBookCore d);
public abstract void Display(int indent);
}
}
感谢
答案 0 :(得分:2)
如果您想要列表中的数组,只需使用ToArray
:
PhoneBookCore[] bookCores = elements.ToArray();
如果你想要一个属性_group
的数组,那么string[]
:
string[] groups = elements.Select(pbc => pbc._group).ToArray();
请注意,您需要为using.System.Linq
添加Enumerable.ToArray
,第二种方法只是演示如何从类中选择属性并创建数组。它还没有编译,因为_group
受lazyberezovsky所提及的保护。
答案 1 :(得分:1)
您是否尝试过Linq方法ToArray()
? (您必须添加using System.Linq
)
PhoneBookCore[] myArray = elements.ToArray();
答案 2 :(得分:1)
您可以使用.ToArray()
LINQ扩展方法:
List<PhoneBookCore> elements = new List<PhoneBookCore>();
PhoneBookCore[] array = elements.ToArray();