我正在尝试创建一种使家庭年龄增加一倍的方法。对我来说,将参数传递给方法非常困难,尤其是对于这个问题。我相信这样做有更好的方法,但这是唯一可以想到的方法。在他们的年龄增加一之后,我目前很难将所有四个家庭的年龄显示在一个标签中。这是我目前拥有的:
// Create a method using the increment operator that increates the age of 4 family members by 1
private void TotalAge (int age1/*, int age2, int age3, int age4*/)
{
age1++;
/* age2++;
age3++;
age4++; */
}
private void calculateButton_Click(object sender, EventArgs e)
{
// Variables to hold family member ages
int member1 = 0, member2 = 0, member3 = 0, member4 = 0;
// Conver the ages into a string, using tryparse method
if (int.TryParse(ageTextBox1.Text, out member1))
{
if (int.TryParse(ageTextBox2.Text, out member2))
{
if (int.TryParse(ageTextBox3.Text, out member3))
{
if (int.TryParse(ageTextBox4.Text, out member4))
{
displayAge.Text = Convert.ToString(TotalAge(member1))
}
}
}
}
}
答案 0 :(得分:1)
您应该创建一个FamilyMember
类,该类将包含家庭成员的所有属性(年龄,姓名等),然后您只需将家庭成员的列表或数组传递给将在其中递增的函数1数组中每个FamilyMember
的年龄。
Public class FamilyMember
{
public string Name {private set; get;}
public int Age { private set; get; }
public FamilyMember(string name, int age)
{
Name = name;
Age = age;
}
public void IncrementAge()
{
Age++;
}
}
Public void IncrementAgeOfFamilyMembers(List<FamilyMember> FamilyMembers)
{
foreach (var fmember in FamilyMembers)
fmember.IncrementAge();
}
如果您希望它恰好适合4个家庭成员,只需将List<FamilyMember>
更改为FamilyMember[4]
(但是您应该检查是否为空)