Rumah >Java >javaTutorial >Bagaimana untuk Melaksanakan Baris Bersaiz Tetap di Java?

Bagaimana untuk Melaksanakan Baris Bersaiz Tetap di Java?

Susan Sarandon
Susan Sarandonasal
2024-12-08 09:54:11281semak imbas

How to Implement a Fixed-Size Queue in Java?

Melaksanakan Baris Gilir Terhad Saiz dalam Java

Pembangun sering menghadapi keperluan untuk struktur data yang mengekalkan saiz tetap sambil menambah elemen secara berterusan . Di Java, melaksanakan baris gilir terhad saiz adalah mudah tetapi memerlukan pengekodan manual. Walau bagaimanapun, alternatif wujud dalam perpustakaan luaran.

Apache Commons Collections 4 memperkenalkan kelas CircularFifoQueue, yang sejajar dengan fungsi yang diingini:

"CircularFifoQueue ialah yang pertama masuk dahulu -baris keluar dengan saiz tetap yang menggantikan elemen tertuanya jika penuh."

Contoh Penggunaan dengan Generik:

import org.apache.commons.collections4.queue.CircularFifoQueue;

// Create a queue with a limit of 2 elements
CircularFifoQueue<Integer> fifo = new CircularFifoQueue<>(2);

// Add elements
fifo.add(1);
fifo.add(2);

// Add a third element (replaces oldest element, in this case 1)
fifo.add(3);

// Print the queue
System.out.println(fifo); // Output: [2, 3]

Contoh Penggunaan dengan Bukan Generik (Apache Commons Collections 3):

import org.apache.commons.collections.buffer.CircularFifoBuffer;

// Create a queue with a limit of 2 elements
CircularFifoBuffer fifo = new CircularFifoBuffer(2);

// Add elements
fifo.add(1);
fifo.add(2);

// Add a third element (replaces oldest element, in this case 1)
fifo.add(3);

// Print the queue
System.out.println(fifo); // Output: [2, 3]

Menggunakan kelas sedia ini memudahkan pelaksanaan saiz terhad beratur dalam Java sambil memastikan kecekapan dan menghalang pertindihan kod.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Baris Bersaiz Tetap di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn