Giriş
Guava'da "Circular Ring" olarak tabir edilebilecek iki tane temel veriyapısı var.Bunlar şöyle.
- EvictingQueue
- MinMaxPriorityQueue
Açıklaması şöyle. Kendi içinde ArrayDequeue kullanır.
Şöyle yaparız
add metodu
Kapasitesi dolunca en eski elemanı siler.
Örnek
Şöyle yaparız.
En eski elemanı döndürür.
Guava'da "Circular Ring" olarak tabir edilebilecek iki tane temel veriyapısı var.Bunlar şöyle.
- EvictingQueue
- MinMaxPriorityQueue
Açıklaması şöyle. Kendi içinde ArrayDequeue kullanır.
KullanımA non-blocking queue which automatically evicts elements from the head of the queue when attempting to add new elements onto the queue and it is full. An evicting queue must be configured with a maximum size. Each time an element is added to a full queue, the queue automatically removes its head element. This is different from conventional bounded queues, which either block or reject new elements when full.This class is not thread-safe, and does not accept null elements.
Şöyle yaparız
Queue<SomeRandomBusinessObject> items = Queues.synchronizedQueue(
EvictingQueue.create(queueSize));
add metodu
Kapasitesi dolunca en eski elemanı siler.
Örnek
Şöyle yaparız.
EvictingQueue<String> queue = EvictingQueue.create(2);
queue.add("a");
queue.add("b");
queue.add("c");
queue.add("d");
System.out.print(queue); //outputs [c, d]
remove metodu
En eski elemanı döndürür.
Hiç yorum yok:
Yorum Gönder