Метод Peek
Метод Peek класса
Queue<T>
возвращает значение на голове очереди типа T
и не меняет коллекцию. Для пустой очереди
бросается InvalidOperationException.
Синтаксис
T item = queue.Peek();
Пример
Давайте посмотрим голову очереди чисел:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
Queue<int> nums = new Queue<int>();
nums.Enqueue(1);
nums.Enqueue(2);
nums.Enqueue(3);
Console.WriteLine(nums.Peek());
}
}
Результат выполнения кода:
1
Пример
Давайте убедимся, что Peek не уменьшает Count:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
Queue<int> nums = new Queue<int>();
nums.Enqueue(1);
nums.Enqueue(2);
nums.Peek();
Console.WriteLine(nums.Count);
}
}
Результат выполнения кода:
2
Пример
Давайте дважды вызовем Peek подряд:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
Queue<string> items = new Queue<string>();
items.Enqueue("a");
items.Enqueue("b");
Console.WriteLine(items.Peek());
Console.WriteLine(items.Peek());
}
}
Результат выполнения кода:
"a"
"a"