Как инициализировать переменную равную последнему индексу массива ArrayList? - C#
Формулировка задачи:
Всем привет, мне нужно реализовать Enumerator, но перебирать элементы с конца массива ArrayList. Проблема в том, что я не знаю как установить переменной, которая является индексом массива изначально максимальное значение.Воn код моего Enumenator:
Вот код класса Person, в котором находится массив, который необходимо перебрать:
using System; using System.Collections.Generic; using System.Text; using System.Collections; namespace ArrayListProject { public class PersonEnumerator : IEnumerator { int currIndex = person.GetChildrenNumber(); /*Инициализатор поля не может обращаться к нестатическому полю, методу или свойству "PersonEnumerator.person".*/ PersonClass.Person person; public PersonEnumerator(PersonClass.Person person) { this.person = person; } #region IEnumerator Members public object Current { get { return person[currIndex]; } } public bool MoveNext() { currIndex--; if (currIndex <= -1) return false; else return true; } public void Reset() { currIndex = person.GetChildrenNumber(); } #endregion } }
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using ArrayListProject; namespace PersonClass { public class Person: IPurse { public Person(string firstName,string lasName) { FirstName = firstName; LastName = lasName; } public string FirstName { get; set; } public string LastName { get; set; } #region Дети ArrayList Children = new ArrayList(); public void AddChild(string firstName, string lastName) { Children.Add(new Person(firstName, lastName)); } public void DeleteChild(int index) { Children.RemoveAt(index); } public Person GetChild(int index) { return (Person)Children[index]; } #endregion public int GetChildrenNumber() { return Children.Count; } public Person this[int index] { get { return (Person)Children[index]; } } public IEnumerator GetEnumerator() { return new PersonEnumerator (this); } } }
Решение задачи: «Как инициализировать переменную равную последнему индексу массива ArrayList?»
textual
Листинг программы
public PersonEnumerator(PersonClass.Person person) { this.person = person; currIndex = this.person.GetChildrenNumber(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д