Ngôn ngữ C# - HashSet<T>
Lớp HashSet trong C#
HashSet là tập hợp danh sách không cho phép trùng giá trị. HashSet<T> khác với các collection khác là nó cung cấp cơ chế đơn giản nhất để lưu các giá trị, nó không chỉ mục thứ tự và các phần tử không sắp xếp theo thứ tự nào. HashSet<T> cung cấp hiệu năng cao cho các tác vụ tìm kiếm, thêm vào, xóa bỏ ...
Một số phương thức trong HashSet
Thành viên | Diễn giải |
---|---|
Count |
Thuộc tính cho biết số phần tử |
Add(T) |
Thêm phần tử vào HashSet |
Remove(T) |
Xóa phần tử khỏi HashSet |
Clear() |
Xóa tất cả các phần tử |
Contains(T) |
Kiểm tra xem có phần tử trong HashSet |
IsSubsetOf(c) |
Kiểm tra xem có là tập con của HashSet c |
IsSupersetOf(c) |
Kiểm tra xem có chứa tập HashSet c |
UnionWith(c) |
Hợp với tập HashSet c |
IntersectWith(c) |
Giao với tập HashSet c |
ExceptWith(c) |
Loại bỏ hết các phần tử chung với c |
Ví dụ về HashSet<T>
Chúng ta hãy xem một ví dụ về lớp HashSet <T> chung lưu trữ các phần tử bằng phương thức Add () và dùng vòng lặp để duyệt các phần tử .
using System;
using System.Collections.Generic;
public class HashSetExample
{
public static void Main(string[] args)
{
// Create a set of strings
var names = new HashSet<string>();
names.Add("Sonoo");
names.Add("Ankit");
names.Add("Peter");
names.Add("Irfan");
names.Add("Ankit");//will not be added
// Iterate HashSet elements using foreach loop
foreach (var name in names)
{
Console.WriteLine(name);
}
}
}
Kết quả:
Sonoo
Ankit
Peter
Irfan
Ví dụ 2 về HashSet<T>
using System;
using System.Collections.Generic;
public class HashSetExample
{
public static void Main(string[] args)
{
// Create a set of strings
var names = new HashSet<string>(){"Sonoo", "Ankit", "Peter", "Irfan"};
// Iterate HashSet elements using foreach loop
foreach (var name in names)
{
Console.WriteLine(name);
}
}
}
Kết quả:
Sonoo
Ankit
Peter
Irfan