C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のStackクラスでCountプロパティを使って要素数を取得する方法

C#のStackクラスに追加された要素の数を確認したい場合には、Countプロパティを使用します。Countプロパティは、スタック内に現在格納されている要素の総数をint型の整数として返します。

StackクラスのCountプロパティとは

StackはLIFO(Last In First Out:後入れ先出し)方式のコレクションであり、Pushメソッドで要素を追加し、Popメソッドで要素を取り出します。Countプロパティを参照することで、その時点でスタックにいくつの要素が存在するかを簡単に把握できます。

なお、Countプロパティの取得はO(1)の計算量で行われるため、要素数が多くても高速に動作するという特徴があります。

まずStackに要素を追加する

それでは、まずPushメソッドを使ってStackに要素を追加してみましょう。

Stack st = new Stack();

st.Push('H');
st.Push('I');
st.Push('J');
st.Push('K');
st.Push('L');
st.Push('M');
st.Push('N');
st.Push('O');

このコードでは、文字'H'から'O'までの8つの要素を順番にスタックへ追加しています。

Countプロパティで要素数を取得する

次に、Countプロパティを参照して、Stack内の要素数を出力します。

Console.WriteLine("Count: " + st.Count);

完全なサンプルコード

ここまでの内容をまとめた完全なプログラムは以下の通りです。

using System;
using System.Collections;

namespace Demo {
    class Program {
        static void Main(string[] args) {
            Stack st = new Stack();

            st.Push('H');
            st.Push('I');
            st.Push('J');
            st.Push('K');
            st.Push('L');
            st.Push('M');
            st.Push('N');
            st.Push('O');

            Console.WriteLine("Count: " + st.Count);
        }
    }
}

実行結果

Count: 8

実行すると「Count: 8」と表示され、Pushメソッドで追加した8個の要素が正しくカウントされていることがわかります。

補足:PopやClear操作によるCountの変化

Countプロパティはスタックの状態に応じて常に変化します。例えば、Popメソッドで要素を1つ取り出せばCountは1減り、Clearメソッドを呼び出せばすべての要素が削除されて0になります。空のスタックに対してPopを実行するとInvalidOperationExceptionが発生するため、処理前にCountプロパティで要素の有無を確認するのは良い実践方法です。

  1. C#のSortedListクラスのCapacityプロパティとは?意味と使い方を解説

    C#のSortedListクラスにおけるCapacityプロパティとはSortedListクラスのCapacity(容量)プロパティは、SortedListが保持できる要素数の最大サイズを示すプロパティです。つまり、内部的に確保されている配列が格納できる要素の総数を表しています。なお、SortedListの既定の容量(デフォルト値)は16に設定されています。要素を追加していき容量を超えると、容量は自動的に拡張される仕組みになっています。以下のコードを実行すると、C#でSortedListクラスのCapacityプロパティを実際に確認できます。コード例using System; using Sy

  2. C#のArrayListクラスにおけるCountプロパティの使い方を解説

    C#のArrayListクラスには、リストに格納されている要素の数を取得するためのCountプロパティが用意されています。このプロパティを使うことで、ArrayList内の現在の要素数を簡単に確認できます。ArrayListへの要素の追加まず、Addメソッドを使ってArrayListに要素を追加します。ArrayList arrList = new ArrayList(); arrList.Add(98); arrList.Add(55); arrList.Add(65); arrList.Add(34);上記のコードでは、4つの整数値(98、55、65、34)をArrayListに追加して