Phương thức Queue.TrimExcess() trong C# đặt dung lượng (capacity) bằng số lượng phần tử thực tế trong Queue<T>, nếu số lượng đó nhỏ hơn 90% dung lượng hiện tại.
Cú pháp
public void TrimExcess ();
Ví dụ
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
Queue queue = new Queue();
queue.Enqueue(100);
queue.Enqueue(200);
queue.Enqueue(300);
queue.Enqueue(400);
queue.Enqueue(500);
queue.Enqueue(600);
queue.Enqueue(700);
queue.Enqueue(800);
queue.Enqueue(900);
queue.Enqueue(1000);
Console.WriteLine("Queue...");
foreach(int i in queue) {
Console.WriteLine(i);
}
Console.WriteLine("Số lượng phần tử trong Queue = " + queue.Count);
queue.Clear();
queue.TrimExcess();
Console.WriteLine("Số lượng phần tử trong Queue [Đã cập nhật] = " + queue.Count);
}
}
Kết quả
100 200 300 400 500 600 700 800 900 1000 Số lượng phần tử trong Queue = 10 Số lượng phần tử trong Queue [Đã cập nhật] = 0
Ví dụ khác
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
Queue queue = new Queue();
queue.Enqueue("Gary");
queue.Enqueue("Jack");
queue.Enqueue("Ryan");
queue.Enqueue("Kevin");
queue.Enqueue("Mark");
queue.Enqueue("Jack");
queue.Enqueue("Ryan");
queue.Enqueue("Kevin");
Console.Write("Số lượng phần tử = ");
Console.WriteLine(queue.Count);
Console.WriteLine("Queue có chứa 'Jack'? = " + queue.Contains("Jack"));
queue.TrimExcess();
queue.Clear();
Console.Write("Số lượng phần tử (đã cập nhật) = ");
Console.WriteLine(queue.Count);
}
}
Kết quả
Số lượng phần tử = 8 Queue có chứa 'Jack'? = True Số lượng phần tử (đã cập nhật) = 0