如何创建由类别及其子类别组成的数组。
示例:
Fruit
--> Apple
--> Banana
Car
--> Civic
--> Vitz
Drinks
--> Pepsi
--> Dew
所以它变成了一个完整的数组。
注意:我不想使用任何集合,例如列表,字典等。
答案 0 :(得分: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());
}
请注意,因为它使用锯齿状数组(数组的AKA数组),您可以使用不同数量的子类别。然后,要遍历子类别,您需要使用计数。
答案 1 :(得分:0)
创建一个名为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");