public SimpleListItem <T> GetItem(int number) { if ((number < 0) || (number >= this.count)) { //Можно создать собственный класс исключения throw new Exception("Выход за границу индекса"); } SimpleListItem <T> current = this.first; int i = 0; //Пропускаем нужное количество элементов while (i < number) { //Переход к следующему элементу current = current.next; //Увеличение счетчика i++; } return(current); }
public T Pop() { T Result = default(T); if (this.count == 0) { return(Result); // если стэк пуст } if (this.count == 1) // если в стэке один элемент { Result = this.first.data; this.first = null; this.last = null; } else // если в стэке больше одного элемента. { SimpleListItem <T> newLast = GetItem(this.count - 2); Result = newLast.next.data; this.last = newLast; newLast.next = null; } this.count--; return(Result); }