- 아래는 프로그래밍 클래스 작성 프로그램의 코드입니다. 내 주요 문제는 AddPerson()을 호출 할 때 _people []의 위치 [0]을 건너 뛰고 _More []의 [1]에서 만든 개체를 배치한다는 것입니다. 새로 생성 된 객체를 배열에 추가하는 동안 어떻게 이런 일이 일어나지 않도록 할 수 있습니까?
- 또한 배열의 모든 데이터를 순서대로 표시해야합니다. GroupOfPeople 클래스의 DisplayAllPeople() 메서드에 적절한 코드가 있다고 생각합니다.
나는 이것이 정확하다고 대부분 기대하고 있습니다. 누구든지 제발 도와 주실 래요?배열에 인스턴스화 된 객체 넣기
* 교사가 우리에게 제공 한 IOHelper라는 클래스가 있지만 정적 메서드이기 때문에 포함하지 않았습니다.
// // 본편
공용 클래스 프로그램 { 공공 정적 무효 메인 (문자열 []에 args) { GroupOfPeople 기 = 새로운 GroupOfPeople();
while (IOHelper.AskYesNoQuestion("Do you want to add another person to the array? "))
{
Console.Write("Name? :");
string name = Console.ReadLine();
Console.Write("Age? :");
int age = int.Parse(Console.ReadLine());
Person newPerson = new Person(name, age);
group.AddPerson(newPerson);
}
Console.WriteLine("Here are your entries:");
group.DisplayAllPeople();
Console.Write("Press any key to end the program... ");
Console.ReadKey();
}
}
// 사람 클래스 //
공용 클래스 사람 { 개인 문자열 _name {얻을; 세트; } private int _age {get; 세트; }
public Person(string name, int age)
{
_name = name;
_age = age;
}
public void Display()
{
Console.Write("Name : " + _name);
Console.Write("Age : " + _age);
Console.WriteLine();
}
}
// GroupOfPeople 클래스 //
공용 클래스 GroupOfPeople { 개인 인 [] _people;
public GroupOfPeople()
{
_people = new Person[0];
}
public void AddPerson(Person newPerson)
{
Person[] _More= new Person[_people.Length +1];
_More[_people.Length] = newPerson;
_people = _More;
}
public void DisplayAllPeople()
{
foreach (Person newPerson in _people)
{
newPerson.Display();
}
}
}
이 마법처럼 일했다! 나는 실제로 그것을 거기에서 가지고 있었다. 그리고 내가 모든 일을하려고 노력하고 있었을 때 나는 그것을 실수로 꺼내었고, 그것을 뒤로 넣는 것을 잊었다. 도와 줘서 고맙다 !! – Kyle