[C#] Hướng dẫn sử dụng List trong lập trình csharp
Xin chào các bạn, bài viết hôm nay mình sẽ hướng dẫn các bạn cách sử dụng List<T> trong lập trình C# . Trong bài này sẽ hướng dẫn các bạn các thao tác thường làm việc với List<T> C#. Thêm Item vào List Xóa Item trong List Tìm kiếm Đảo ...
Xin chào các bạn, bài viết hôm nay mình sẽ hướng dẫn các bạn cách sử dụng List<T> trong lập trình C#.
Trong bài này sẽ hướng dẫn các bạn các thao tác thường làm việc với List<T> C#.
- Thêm Item vào List
- Xóa Item trong List
- Tìm kiếm
- Đảo vị trí
- Sắp xếp lại các phần tử trong List
Năm phương thức trên là những phương thức phổ biến khi các bạn thao tác và làm việc với List<T>.

1. Khởi tạo biến List<T> trong C#
Để sử dụng được List<T> đầu tiên các bạn cần import thư viện vào
using System.Collections.Generic;
Khai báo một List trong C# các code như sau:
// List chứa giá trị kiểu Int16
List<Int16> list = new List<Int16>();
List<string> authors = new List<string>(5);
string[] sinhvien = { "Nguyễn Thảo", "Lập trình VB.NET", "Thảo Meo" };
List<string> svsList = new List<string>(sinhvien);
2. Thêm mới một Item vào List
// List không có giới hạn số phần tử
List<int> numberList = new List<int>();
numberList.Add(32);
numberList.Add(21);
numberList.Add(45);
numberList.Add(11);
numberList.Add(89);
// List kiểu string có giới hạn số phần tử là 5
List<string> authors = new List<string>(5);
authors.Add("Nguyễn Thảo");
authors.Add("Cái Trí Minh");
authors.Add("Nguyễn Thị Cẩm Tú");
authors.Add("Trịnh Quốc Khang");
authors.Add("Võ Sơn Băng");
authors.Add("Nguyễn Đình Tuyên");
Hoặc các bạn cũng có thể import dữ liệu từ một mảng có sẵn vào List.
// Mảng một chiều
string[] sinhviens = { "Nguyễn Thảo", "Cái Trí Minh", "Nguyễn Hoàng Minh" };
// Tạo List
List<string> sinhvienList = new List<string>();
animalsList.AddRange(sinhviens);
foreach (string a in sinhvienList)
Console.WriteLine(a);
3. Cách đọc dữ liệu trong List
Để đọc từng item trong list<T> chúng ta sẽ sử dụng một vòng lặp foreach để duyệt qua các item
foreach (string a in sinhviens) Console.WriteLine(a);
Hoặc nếu bạn muốn xuất item ở vị trí index nào bạn có thể viết như sau, ở dưới này mình sẽ lấy giá trị ở index thứ 2
Console.WriteLine(sinhviens[2]);
=> Kết quả trả về: Nguyễn Hoàng Minh
4. Đếm số các phần tử trong List
Console.WriteLine("Đếm số sinh viên: " + sinhviens.Count);
=> 3
5. Thêm mới một items vào vị trí mình chọn, hoặc một list vào list từ vị trí bất kỳ
sinhviens.Insert(3, "Hoàng Dung");
// Mảng chứa danh sách sinh viên mới
string[] newSinhviens = { "Quách Tĩnh", "Dương Quá", "Long Cô Cô" };
// chèn vào từ vị trí số 2
sinhviens.InsertRange(2, newSinhviens);
6. Xóa một item ra khỏi một list
// xóa sinh viên có tên Nguyễn Thảo
sinhviens.Remove("Nguyễn Thảo");
Hoặc có thể xóa item từ vị trí Index
// Xóa item ở vị trí thứ 3 sinhviens.RemoveAt(3);
Nếu các bạn muốn xóa tất cả các phần tử trong List, chúng ta sẽ sử dụng hàm Clear()
// Xóa tất cả các item sinhviens.Clear();
7. Tìm kiếm một item trong list
int idx = sinhviens.IndexOf("Cái Trí Minh");
if (idx > 0)
Console.WriteLine($"sinh viên xuất hiện ở vị trí: {idx}");
else
Console.WriteLine("Không tìm thấy sinh viên này");
8. Sắp xếp các item trong list
List<string> authors = new List<string>(5);
authors.Add("Mahesh Chand");
authors.Add("Chris Love");
authors.Add("Allen O'neill");
authors.Add("Naveen Sharma");
authors.Add("Mahesh Chand");
authors.Add("Monica Rathbun");
authors.Add("David McCarter");
Console.WriteLine("Original List items");
Console.WriteLine("===============");
// Print original order
foreach (string a in authors)
Console.WriteLine(a);
// Sort list items
authors.Sort();
Console.WriteLine();
Console.WriteLine("Sorted List items");
Console.WriteLine("===============");
// Print sorted items
foreach (string a in authors)
Console.WriteLine(a);

9. Đảo vị trí item trong list (Reverse an List c#)
// List of string
List<string> authors = new List<string>(5);
authors.Add("Mahesh Chand");
authors.Add("Chris Love");
authors.Add("Allen O'neill");
authors.Add("Naveen Sharma");
authors.Add("Mahesh Chand");
authors.Add("Monica Rathbun");
authors.Add("David McCarter");
Console.WriteLine("Original List items");
Console.WriteLine("===============");
// Print original order
foreach (string a in authors)
Console.WriteLine(a);
// Reverse list items
authors.Reverse();
Console.WriteLine();
Console.WriteLine("Sorted List items");
Console.WriteLine("===============");
// Print reversed items
foreach (string a in authors)
Console.WriteLine(a);
Kết quả:

Tìm kiếm nhị phân Binary Search trong List.
int bs = sinhvien.BinarySearch("Nguyễn Thảo");
HAVE FUN :)