Dat*_*ase 5 c# arrays hashtable arraylist multidimensional-array
我正在试图弄清楚如何构建一个多维"数组",它是:
用途如下:
console.writelen(array[0]["firstname"]);
console.writelen(array[0]["lastname"]);
console.writelen(array[0]["phone"]);
console.writelen(array[1]["firstname"]);
console.writelen(array[1]["lastname"]);
console.writelen(array[1]["phone"]);
.....
.....
console.writelen(array[x]["firstname"]);
console.writelen(array[x]["lastname"]);
console.writelen(array[x]["phone"]);
Run Code Online (Sandbox Code Playgroud)
Wil*_*den 11
你确定创建一个包含数据的类/结构是不合适的吗?例如:
class Person
{
public string FirstName
{
get;
set;
}
public string LastName
{
get;
set;
}
public string Phone
{
get;
set;
}
}
Run Code Online (Sandbox Code Playgroud)
然后你只需要创建一个数组Person:
var array = new Person[1];
array[0] = new Person() { FirstName = "Joe", LastName = "Smith", Phone = "foo" };
Run Code Online (Sandbox Code Playgroud)
或者,既然你说"灵活的大小",也许你想要一个列表:
var list = new List<Person>();
list.Add(new Person());
Run Code Online (Sandbox Code Playgroud)
更新:第array[0]一个示例中用于设置的语法是对象初始值设定项 ; 以下两个片段大致相同:
var foo = new Person();
foo.FirstName = "John";
var bar = new Person() { FirstName = "John" };
Run Code Online (Sandbox Code Playgroud)
所以是的,list.Add(new Person() { ... })如果你愿意,你可以打电话.在这种情况下,您还可以使用集合初始值设定项:
var john = new Person() { FirstName = "John" };
var joe = new Person() { FirstName = "Joe" };
var list = new List<Person>() { john, joe };
Run Code Online (Sandbox Code Playgroud)