/// <summary> /// Добавление элемента в список людей /// </summary> /// <param name="person">Новый человек</param> public void AddPerson(PersonBase person) { var bufferOfPerson = _personList; _personList = new PersonBase[bufferOfPerson.Length + 1]; for (int i = 0; i < bufferOfPerson.Length; i++) { _personList[i] = bufferOfPerson[i]; } _personList[bufferOfPerson.Length] = person; }
/// <summary> /// Возвращает индекс элемента в списке /// по переднному экземпляру объекта класса Person /// </summary> /// <param name="person">Экземпляр класса Person</param> /// <returns>Индекс человека в списке</returns> public int GetIndexOfPerson(PersonBase person) { for (int i = 0; i < _personList.Length; i++) { if (person == _personList[i]) { return(i); } } throw new KeyNotFoundException("There is no such person in " + "this list."); }
/// <summary> /// Удалает элемент из списка при совпадении с переданным /// экземпляром класса Person /// </summary> /// <param name="person">Экземпляр класса Person</param> public void DelPerson(PersonBase person) { DelPersonByIndex(GetIndexOfPerson(person)); }