Collection classes phục vụ nhiều mục đích: cấp phát bộ nhớ động cho elements, truy cập danh sách items dựa trên index, v.v.
Các class trong Collections:
| STT | Class & Mô tả & Cách dùng |
|---|---|
| 1 | ArrayList Đại diện tập hợp có thứ tự object có thể index riêng lẻ. |
| 2 | Hashtable Dùng key truy cập elements trong collection. |
| 3 | SortedList Dùng key và index truy cập items trong list. |
| 4 | Stack Đại diện tập hợp LIFO (last-in, first-out). |
| 5 | Queue Đại diện tập hợp FIFO (first-in, first-out). |
| 6 | BitArray Đại diện mảng biểu diễn nhị phân dùng giá trị 1 và 0. |
Ví dụ BitArray class:
Ví dụ
using System;
using System.Collections;
namespace CollectionsApplication {
class Program {
static void Main(string[] args) {
// tạo 2 bit arrays size 8
BitArray ba1 = new BitArray(8);
BitArray ba2 = new BitArray(8);
byte[] a = { 60 };
byte[] b = { 13 };
// lưu giá trị 60, 13 vào bit arrays
ba1 = new BitArray(a);
ba2 = new BitArray(b);
// nội dung ba1
Console.WriteLine("Bit array ba1: 60");
for (int i = 0; i < ba1.Count; i++) {
Console.Write("{0, -6} ", ba1[i]);
}
Console.WriteLine();
// nội dung ba2
Console.WriteLine("Bit array ba2: 13");
for (int i = 0; i < ba2.Count; i++) {
Console.Write("{0, -6} ", ba2[i]);
}
Console.WriteLine();
BitArray ba3 = new BitArray(8);
ba3 = ba1.And(ba2);
// nội dung ba3
Console.WriteLine("Bit array ba3 after AND operation: 12");
for (int i = 0; i < ba3.Count; i++) {
Console.Write("{0, -6} ", ba3[i]);
}
Console.WriteLine();
ba3 = ba1.Or(ba2);
Console.WriteLine("Bit array ba3 after OR operation: 61");
for (int i = 0; i < ba3.Count; i++) {
Console.Write("{0, -6} ", ba3[i]);
}
Console.WriteLine();
Console.ReadKey();
}
}
}
Kết quả
Bit array ba1: 60
False False True True True True False False
Bit array ba2: 13
True False True True False False False False
Bit array ba3 after AND operation: 12
False False True True False False False False
Bit array ba3 after OR operation: 61
True False True True False False False False