我有一个包含一些值和数组的类,我需要此数组中的元素具有默认值。
喜欢
class Object
{
public string OName { get; set;}
public string OType { get; set; }
public string Data { get; set; }
Object[] RelationList = new Object[5];
RelationList[0] = blabla;
RelationList[1] = blabla;
......
}
我需要将RelationList设置为某些默认值。任何人都知道怎么做?感谢。
答案 0 :(得分:4)
设置这些默认值是构造函数的作用:
class SomeKindOfObject
{
public string OName { get; set; }
public string OType { get; set; }
public string Data { get; set; }
Object[] RelationList = new Object[5];
// Constructor
public SomeKindOfObject()
{
RelationList[0] = blabla;
}
}
或者,如果你已经有了对象,你也可以使用一个数组初始化器:
Object[] RelationList = new Object[] { blahblah, blahblah, blahblah, ect };
答案 1 :(得分:0)
你必须遍历它们。
E.g。
class Foo
{
private readonly object[] _relationList = new object[5];
public Foo(object defaultValue)
{
for (var i = 0; i < _relationList.Length; ++i) {
_relationList[i] = defaultValue;
}
}
}
答案 2 :(得分:0)
在构造函数中初始化属性:
class Class1
{
public string OName { get; set;}
public string OType { get; set; }
public string Data { get; set; }
public object RelationList { get; set; }
public Class1()
{
// initialize your properties here
RelationList = new object[5];
RelationList[0] = blabla;
RelationList[1] = blabla;
}
}
答案 3 :(得分:0)
设置默认值可以在对象的构造函数中完成
class MyObject
{
public string OName { get; set; }
public string OType { get; set; }
public string Data { get; set; }
public Object[] RelationList = new Object[5];
public MyObject()
{
RelationList[0] = 1;
RelationList[1] = 2;
}
}
根据具体情况,还有其他设置这些默认值的机制(例如,在构造函数中创建一个新数组而不是在声明中,在构造函数中传递它们等)。
答案 4 :(得分:0)
您可以使用对象初始化程序
Object[] RelationList = new[] {
new Object { OName = "abc", OType = "xyz", Data = "tetst" },
new Object { OName = "abc", OType = "xyz", Data = "tetst" },
new Object { OName = "abc", OType = "xyz", Data = "tetst" },
new Object { OName = "abc", OType = "xyz", Data = "tetst" }
};