Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
519 of 1492 menu
◀ ▶

Метод TryPop

Метод TryPop класса Stack<T> при непустом стеке удаляет верх, записывает значение в out T result и возвращает true. Если элементов нет, возвращает false без исключения.

Синтаксис

bool ok = stack.TryPop(out T result);

Пример

Давайте снимем верх через TryPop:

using System; using System.Collections.Generic; class Program { static void Main() { Stack<int> nums = new Stack<int>(); nums.Push(1); nums.Push(2); if (nums.TryPop(out int res)) { Console.WriteLine(res); } } }

Результат выполнения кода:

2

Пример

Давайте вызовем TryPop на пустом стеке:

using System; using System.Collections.Generic; class Program { static void Main() { Stack<int> nums = new Stack<int>(); Console.WriteLine(nums.TryPop(out int res)); } }

Результат выполнения кода:

False

Пример

Давайте опустошим стек в цикле через TryPop:

using System; using System.Collections.Generic; class Program { static void Main() { Stack<int> nums = new Stack<int>(); nums.Push(1); nums.Push(2); nums.Push(3); while (nums.TryPop(out int res)) { Console.WriteLine(res); } } }

Результат выполнения кода:

3 2 1

Смотрите также

  • метод Pop,
    который бросает исключение на пустом стеке
  • метод TryPeek,
    который смотрит верх без снятия
  • метод TryDequeue,
    который снимает голову очереди без исключения
  • свойство Count,
    которое показывает, есть ли что снимать
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить