我定义了一个自定义类:
class Car
{
public string a;
public string b;
public string c;
public static void GetCar()
{
var car = new Car[4];
for(int i=0; i<4; ++i)
{
novica[i]= new Novica();
novica[i].a="abc";
novica[i].b="abc";
novica[i].c="abc";
}
}
}
这将使用值填充数组,现在我想将此数组与其获取的值(从HTML加载字符串)一起使用在不属于此类的函数中。是否可能,如果可能,怎么样?
答案 0 :(得分:5)
为了在别处使用它,你需要从你的函数返回数组,如下所示:
public static Car[] GetCar()
{
var car = new Car[4];
for(int i=0; i<4; ++i)
{
car[i]= new Novica();
car[i].a="abc";
car[i].b="abc";
car[i].c="abc";
}
return car;
}
答案 1 :(得分:2)
你做不到。你的方法实际上没有返回任何东西。
如果您要更改方法签名以返回该方法创建的数组:
public static Car[] GetCar()
{
// Body
return car;
}
电话会变得如此简单:
var cars = Car.GetCar();
答案 2 :(得分:0)
我建议略有不同的结构。提供一个包含所有汽车作为静态属性的数组
public class Car
{
public static Car[] AllCars { get; private set; }
public Car()
{
// Class and constructor somewhat simplyfied.
AllCars = new Car[4];
for (int i = 0; i < 4; ++i) {
AllCars[i] = new Novica();
}
}
}
现在你可以使用这样的汽车了
foreach (Car car in Car.AllCars) {
// do something with car
}
或使用
访问特定车辆string a = Car.AllCars[i].a;