Antrian Sederhana menggunakan LinkedList (Java)

Run Settings
LanguageJava
Language Version
Run Command
import java.util.LinkedList; public class Main { public static void main(String[] args) { Antrian antrian = new Antrian(); antrian.register("Adi", false); antrian.register("Budi", true); antrian.show(); System.out.print(antrian.served("Addi")); } } class Antrian { private LinkedList<String> list; public Antrian() { list = new LinkedList<>(); } public String register(String nama, boolean isPriority) { // jika prioritas, tempatkan pada antrian pertama // jika bukan maka tempatkan pada antrian terakhir if (isPriority) list.push(nama); else list.add(nama); return String.format("%s berhasil melakukan pendaftaran", nama); } public String served(String nama) { if (list.contains(nama)) { if (list.peek().equalsIgnoreCase(nama)) { list.remove(nama); return String.format("%s dilayani", nama); } else { return String.format("%s tidak dapat dilayani karena berada pada antrian ke-%d", nama, (list.indexOf(nama)+1)); } } return String.format("%s belum mendaftar", nama); } public void show() { // tampilkan antrian if (list.isEmpty()) { System.out.println("Tidak ada antrian"); } else { System.out.println("Antrian saat ini: "); for (String nama: list) { System.out.println( String.format("%d. %s", list.indexOf(nama) + 1, nama) ); } } } }
Editor Settings
Theme
Key bindings
Full width
Lines