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

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

C#のArrayListクラスには、ArrayListが読み取り専用かどうかを示す値を取得するためのIsReadOnlyプロパティが用意されています。このプロパティを使うことで、コレクションに対して要素の追加や削除が可能かどうかをプログラム実行時に確認できます。

IsReadOnlyプロパティの基本

IsReadOnlyプロパティはbool型の値を返します。ArrayListが読み取り専用であれば「True」、読み取り・書き込みが可能な通常の状態であれば「False」が返されます。

まず、次のようにArrayListのインスタンスを作成します。

ArrayList arrList = new ArrayList();

続いて、IsReadOnlyプロパティを使って状態を確認してみましょう。

Console.WriteLine("myArrayList.IsReadOnly = " + arrList.IsReadOnly);

サンプルコード

以下は、ArrayListクラスのIsReadOnlyプロパティの実際の使用例です。

using System;
using System.Collections;
class Demo {
   public static void Main() {
      ArrayList arrList = new ArrayList();
      Console.WriteLine("myArrayList.IsReadOnly = " + arrList.IsReadOnly);
   }
}

実行結果

上記のコードを実行すると、新しく作成したArrayListは読み取り専用ではないため、次のような出力が得られます。

myArrayList.IsReadOnly = False

補足:読み取り専用のArrayListを作成するには

通常、new演算子で生成したArrayListは書き込み可能ですが、ArrayList.ReadOnlyメソッドを使用すると、元のリストをラップした読み取り専用のArrayListを作成できます。読み取り専用にされたコレクションに対してAddやRemoveなどの変更操作を行おうとすると、NotSupportedExceptionがスローされるため注意が必要です。

このようにIsReadOnlyプロパティは、コレクションを操作する前にその可変性を確認し、安全に処理を行うための便利な手段となります。

  1. 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に追加して

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

    ArrayListクラスのCapacityプロパティは、そのArrayListが格納できる要素の数を取得または設定するためのプロパティです。Capacity(容量)は、実際に格納されている要素数を表すCount(カウント)よりも常に大きいか等しい値になります。Capacityプロパティへのアクセスは以下のように記述します。arrList.Capacity容量の仕組みArrayListの既定の容量は4です。要素を追加していき、既定の容量を超えると、容量は自動的に2倍に拡張されます。例えば、5つの要素を追加した場合、容量は8に拡張されます。以降も同様に、容量を超えた時点で順次2倍ずつ拡張されていき