在 C# 中初始化对象数组
本文将介绍如何在 C# 中通过构造函数参数来初始化对象数组。
在 C#
中使用 Constructor
参数初始化对象数组
首先,我们必须导入 System
库以在我们的示例中使用它们的功能。
using System;
然后,在公共类 Person
中,创建字段、构造函数、getter、setter 方法和其他方法。这将完成构造函数调用活动并显示输出。
public class Person{}
在 Person
类中,声明两个私有变量,分别命名为 personge
和 personName
,数据类型分别为 long 和 string。
我们对变量使用私有访问修饰符来保护我们的数据不被泄露,因为我们不希望我们的数据从这个类之外被访问。
private long personAge;
private string personName;
然后我们将构造我们的构造函数 Person
并将其传递给两个数据类型为 long 和 string 的变量,分别标记为 age
和 name
。
我们将把 age
的值分配给之前在里面创建的变量 personge
,我们将分配在调用它时将获得的 age
的值。personName
变量将被类似处理。
public Person(long age, string Name)
{
personAge = age;
personName = Name;
}
之后,创建另一个类 Personge
,其数据类型为 long,与我们的 personge
变量的数据类型相同。
创建 get
和 set
方法来完成构造函数调用活动
在类中,我们将创建一个 get
方法,每次调用它都会返回 personge
。此外,我们将创建一个 set
方法,将调用它时收到的值分配给 personge
变量。
public long PersonAge
{
get
{
return personAge;
}
set
{
personAge = value;
}
}
与前面的类 Personge
类似,我们将创建另一个类 PersonName
,其中将创建一个 get
方法。
每次调用它都会返回 personName
,并且 set
方法会将调用它时收到的值分配给 personName
变量。
public string PersonName
{
get
{
return personName;
}
set
{
personName = value;
}
}
在上述这些步骤之后,Person
类将被关闭,然后,我们创建另一个公共类 BioData
。
public class BioData{}
我们将在这个类中创建一个带有变量 persons
声明的 Person
数组类对象。
Person[] persons;
现在,我们将创建一个公共方法 BioData()
,在其中我们将初始化一个名为 persons
的 Person
数组类型变量,并通过调用 Person
构造函数。
我们将分配所需的值 personge
和 personName
。我们调用 Person
构造函数 4 次并分配不同的值。
public BioData()
{
persons = new Person[]
{
new Person (52, "Kian"),
new Person (47, "Max"),
new Person (19, "Franky"),
new Person (76, "Connor"),
};
}
完成这些步骤后,我们需要显示所有 Person 的详细信息。因此,我们将创建一个名为 showDetails()
的新方法,其返回类型为 void
,因为它不返回任何内容。
首先,此方法将显示 Person's Details
。然后我们应用一个 foreach
循环,在它的条件部分,我们创建一个变量 Detail
。
这将迭代循环体内的 persons
实例,我们显示个人的姓名和年龄。
public void showDetails()
{
Console.WriteLine("Person's Details\n");
foreach (var Detail in persons)
{
Console.WriteLine("Person Name: " + Detail.PersonName);
Console.WriteLine("Person Age: " + Detail.PersonAge);
Console.WriteLine("---------------------------");
}
}
现在,我们有了 int 类型的 main
方法。在 main
中,我们初始化一个变量 Data
并为其分配位于 BioData
类中的 BioData()
方法。
我们将使用 Data
来执行 showDetails()
方法,该方法将显示 Person
的所有属性。
public static class PersonDetail
{
static int Main(string[] args)
{
var Data = new BioData();
Data.showDetails();
return 0;
}
}
C#
中通过构造函数参数初始化数组的完整源代码
using System;
public class Person
{
private long personAge;
private string personName;
public Person(long age, string Name)
{
personAge = age;
personName = Name;
}
public long PersonAge
{
get
{
return personAge;
}
set
{
personAge = value;
}
}
public string PersonName
{
get
{
return personName;
}
set
{
personName = value;
}
}
}
public class BioData
{
Person[] persons;
public BioData()
{
persons = new Person[]
{
new Person (52, "Kian"),
new Person (47, "Max"),
new Person (19, "Franky"),
new Person (76, "Connor"),
};
}
public void showDetails()
{
Console.WriteLine("Person's Details\n");
foreach (var Detail in persons)
{
Console.WriteLine("Person Name: " + Detail.PersonName);
Console.WriteLine("Person Age: " + Detail.PersonAge);
Console.WriteLine("---------------------------");
}
}
}
public static class PersonDetail
{
static int Main(string[] args)
{
var Data = new BioData();
Data.showDetails();
return 0;
}
}
输出:
Person's Details
Person Name: Kian
Person Age: 52
---------------------------
Person Name: Max
Person Age: 47
---------------------------
Person Name: Franky
Person Age: 19
---------------------------
Person Name: Connor
Person Age: 76
---------------------------