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

C#のHashSetからすべての要素を削除する方法(Clearメソッドの使い方)

HashSetからすべての要素をまとめて削除するには、Clear()メソッドを使用します。このメソッドを呼び出すと、セット内の全要素が削除され、Countプロパティの値は0になります。以下に具体的なコード例を示します。

例1:2つのHashSetを作成し、片方の要素をすべて削除する

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main(String[] args){
      HashSet<string> set1 = new HashSet<string>();
      set1.Add("A");
      set1.Add("B");
      set1.Add("C");
      set1.Add("D");
      set1.Add("E");
      set1.Add("F");
      set1.Add("G");
      set1.Add("H");
      Console.WriteLine("Elements in HashSet1...");
      foreach (string res in set1){
         Console.WriteLine(res);
      }
      HashSet<string> set2 = new HashSet<string>();
      set2.Add("John");
      set2.Add("Jacob");
      set2.Add("Ryan");
      set2.Add("Tom");
      set2.Add("Andy");
      set2.Add("Tim");
      set2.Add("Steve");
      set2.Add("Mark");
      Console.WriteLine("Elements in HashSet2...");
      foreach (string res in set2){
         Console.WriteLine(res);
      }
      Console.WriteLine("Is HashSet1 equal to HashSet2? = "+set1.Equals(set2));
      Console.WriteLine("Count of HashSet2 = "+set2.Count);
      set2.Clear();
      Console.WriteLine("Count of HashSet2 (updated) = "+set2.Count);
   }
}

出力結果

上記のコードを実行すると、次のような出力が得られます。

Elements in HashSet1...
A
B
C
D
E
F
G
H
Elements in HashSet2...
John
Jacob
Ryan
Tom
Andy
Tim
Steve
Mark
Is HashSet1 equal to HashSet2? = False
Count of HashSet2 = 8
Count of HashSet2 (updated) = 0

例2:単一のHashSetの全要素を削除する

続いて、もう少しシンプルな例を見てみましょう。1つのHashSetに対してClear()を呼び出し、要素数の変化を確認します。

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main(String[] args){
      HashSet<string> set1 = new HashSet<string>();
      set1.Add("A");
      set1.Add("B");
      set1.Add("C");
      set1.Add("D");
      set1.Add("E");
      set1.Add("F");
      set1.Add("G");
      set1.Add("H");
      Console.WriteLine("Elements in HashSet...");
      foreach (string res in set1){
         Console.WriteLine(res);
      }
      Console.WriteLine("Count of HashSet1 = "+set1.Count);
      set1.Clear();
      Console.WriteLine("Count of HashSet1 (updated) = "+set1.Count);
   }
}

出力結果

上記のコードを実行すると、次のような出力が得られます。

Elements in HashSet...
A
B
C
D
E
F
G
H
Count of HashSet1 = 8
Count of HashSet1 (updated) = 0

ポイント解説

  • Clear()メソッド:HashSet内のすべての要素を一度に削除します。引数は不要で、呼び出すだけで全要素が消去されます。
  • Countプロパティ:HashSetに現在含まれる要素数を取得します。Clear()の実行後は0になることが確認できます。
  • 要素を1つずつRemove()で削除するよりも、Clear()の方が効率的でコードも簡潔になります。
  • HashSetは重複しない要素のコレクションであり、Add()で追加した順序は保持されない点にも注意してください。
  1. C#でリストから重複要素を削除する方法【Distinct()メソッドの使い方】

    C#でリスト(List)から重複する要素を削除したい場合、LINQのDistinct()メソッドを使うのが最もシンプルで効率的な方法です。この記事では、基本的な手順をサンプルコードとともに分かりやすく解説します。 手順1:リストを宣言して要素を追加する まず、リストを宣言し、要素を追加します。ここでは、意図的に同じ値「50」を2回追加しています。 List<int> list = new List<int>(); list.Add(50); list.Add(90); list.Add(50); list.Add(100); 手順2:Distinct()メソッドで重複を

  2. JavaでArrayListのすべての要素を削除する方法(clearメソッドの使い方)

    JavaのArrayListからすべての要素を一括で削除したい場合は、clear()メソッドを使用します。この記事では、実際のコード例を通じて、ArrayListの全要素を削除する手順をわかりやすく解説します。1. 要素を持つArrayListを作成するまず、複数の要素を格納したArrayListを用意しましょう。以下の例では、Integer型のArrayListに7つの数値を追加しています。ArrayList<Integer> arrlist = new ArrayList<Integer>(5); arrlist.add(25); arrlist.add(50);