PopメソッドはStackの先頭にある要素を取り出して取得しますが、Peekメソッドを使うとStackの内容を変更せず(Stackから削除せず)に先頭にある要素を参照できます。
Peekメソッドを使ってStackの内容を変更せずに先頭の内容を参照する
using System;
using System.Collections.Generic;
class Sample {
static void Main()
{
var s = new Stack<string>();
// Stackに要素をPush
s.Push("Alice");
s.Push("Bob");
s.Push("Charlie");
// Stackの内容を変更せずに先頭にある要素を参照する
Console.WriteLine(s.Peek());
// PeekメソッドはStackから要素を取り出さずに参照するので、要素数は変わらない
Console.WriteLine($"Count = {s.Count}"); // 3
}
}
実行結果
Charlie Count = 3
foreachなどによる列挙操作では、Stackの状態を変更せずにStackに格納されているすべての内容を参照することができます。