如何在多维数组中使用键
本文关键字:数组 | 更新日期: 2023-09-27 18:02:29
如何创建一个由类别及其子类别组成的数组
的例子:
Fruit
--> Apple
--> Banana
Car
--> Civic
--> Vitz
Drinks
--> Pepsi
--> Dew
就变成了一个完整的1数组。
注意:我不想使用任何集合,如列表,字典等。
如果您被限制只能使用数组,那么您可以这样做:
object[][] arr = new object[3][];
arr[0] = new object[2];
arr[0][0] = "Fruit";
arr[0][1] = new string[2] { "Apple", "Banana" };
arr[1] = new object[2];
arr[1][0] = "Car";
arr[1][1] = new string[2] { "Civic", "Vitz" };
arr[2] = new object[2];
arr[2][0] = "Drinks";
arr[2][1] = new string[2] { "Pepsi", "Dew" };
然后遍历:
for (int i = 0; i < 3; i++)
{
StringBuilder line = new StringBuilder();
line.Append((string)arr[i][0] + ": ");
string[] subs = (string[])arr[i][1];
for (int j = 0; j < 2; j++)
{
line.Append(subs[j] + "; ");
}
MessageBox.Show(line.ToString());
}
注意,因为这使用了一个锯齿数组(又名数组的数组),所以可以有不同数量的子类别。然后,要遍历子类别,您需要使用count。
创建一个名为arrayobject的接口,然后创建类fruit,car和drinks,然后实现该接口并创建接口的数组
比如
public interface arrayobject
{
string description();
}
class Fruit:arrayobject
{
public string fruittype;
public Fruit(string type)
{
fruittype = type;
}
public string description()
{
return fruittype;
}
}
class Car : arrayobject
{
public string Cartype;
public Car(string type)
{
Cartype = type;
}
public string description()
{
return Cartype;
}
}
现在你可以创建一个数组的arrayobject
arrayobject[] mylist = new arrayobject[2];
mylist[0] = new Fruit("banana");
mylist[1] = new Car("my Ford");