我已经像这样创建了一个Object数组.但是要为对象赋值,我必须在数组的每个位置实例化每个对象?我为什么需要这个?
这是我的方法
StageObject[] StageSplitDate = new StageObject[Stages.Rows.Count];
for (int i = 0; i < Stages.Rows.Count; i++)
{
StageSplitDate[i] = new StageObject();
StageSplitDate[i].StageId = "String Value";
StageSplitDate[i].FromTime = StartTime;
StartTime =StartTime.AddMinutes(Convert.ToDouble(10));
StageSplitDate[i].ToTime = StartTime;
}
return StageSplitDate;
Run Code Online (Sandbox Code Playgroud)
和对象类
public class StageObject
{
public string StageId { get; set; }
public DateTime FromTime { get; set; }
public DateTime ToTime { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
\n\n\n我必须在数组的每个位置实例化每个对象吗?
\n
您没有实例化数组元素两次。在第一行中,您实例化了一个数组StageSplitDate ,其中每个元素都设置为 null。默认情况下,每个数组(引用类型)元素都初始化为 null。要进一步使用它,您还需要实例化数组中的每个对象,否则您将得到空引用异常。
对于 C#
\n\n\n\n数值数组元素的默认值设置为零,引用元素设置为 null。
\n\n(因为这个问题最初被标记为java)
\n\n对于JAVA
\n\n\n\n\n\n\n
\n- 每个类变量、实例变量或数组组件在创建时都使用默认值进行初始化(\xc2\xa715.9、\xc2\xa715.10):
\n- 对于所有引用类型 (\xc2\xa74.3),默认值为 null。
\n
| 归档时间: |
|
| 查看次数: |
878 次 |
| 最近记录: |