Skip to main content

PROGRAM LINKED LIST MENGGUNAKAN BAHASA PEMROGRAMAN JAVA 2

 

 Program Linked List Barang 2

Berikut ini merupakan contoh program linked list dengan bahasa pemrograman java untuk penyimpanan data barang versi kedua (versi pertama dapat dilihat disini) dengan tambahan untuk pilihan tambah dan hapus node depan dan node belakang:

Source Code

1. Class cNode

public class cNode {
private String kode;
private String nama;
private int harga;
cNode next;
cNode prev;
cNode(String k, String n, int h){
kode = k; nama = n; harga = h;
next = null;
System.out.println("Object "+k+" "+n+" "+h+" dibuat...");
}
public String getKode() {
return kode;
}
public String getNama() {
return nama;
}
public int getHarga() {
return harga;
}
public String ToString() {
return kode+"||"+nama+"||"+harga;
}
}

2. Class cLinkedList

public class cLinkedList {
cNode header;
cNode tail;
int jNode;
cLinkedList(cNode s){
header = tail = s;
jNode = 0;
System.out.println("Object Linked List dibuat...");
}
public void tambahNodeDepan(cNode baru) {
if(header == null) {
header = tail = baru;
}
else {
baru.next = header;
header = baru;
}
System.out.println("Penambahan sukses...");
}
public void tambahNodeBelakang(cNode baru) {
if(tail == null) {
header = tail = baru;
}
else {
tail.next = baru;
baru.prev = tail;
tail = baru;
}
}
public void hapusNodeDepan() {
if(header == null) {
System.out.println("Linked List kosong!");
}
else {
cNode t = header.next;
header = null;
header = t;
System.out.println("Penghapusan sukses...");
}
}
public cNode hapusNodeBelakang() {
if(header != null) {
cNode list, t;
if(header.next == null) {
t = header;
header = tail = null;
}
else {
list = header;
while (list.next != tail) {
list = list.next;
}
t = tail;
tail = list;
tail.next = null;
}
System.out.println("Penghapusan sukses...");
return t;
}
else {
System.out.println("Linked List kosong!");
return null;
}
}
public void cariNode(String c) {
boolean yes = false;
System.out.println("Barang dicari: ");
for(cNode t = header; t != null; t = t.next) {
if(t.getNama().equalsIgnoreCase(c)) {
yes = true;
break;
}
}
if(yes == false) {
System.out.println("Data barang tidak ada!");
}
else {
System.out.println("Barang ditemukan...");
}
System.out.println();
}
public void cetakLinkedList() {
System.out.println("Isi Linked List: ");
for(cNode t = header; t != null; t = t.next) {
System.out.println(t.ToString());
}
System.out.println("");
}
}

3. Class appLinkedListBarang

import java.util.Scanner;
public class appLinkedListBarang {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
cLinkedList db = new cLinkedList(null);
int pilih = 0;
do {
System.out.println("\nMENU LINKED LIST BARANG");
System.out.println("1. Tambah Node Depan");
System.out.println("2. Tambah Node Belakang");
System.out.println("3. Hapus Node Depan");
System.out.println("4. Hapus Node Belakang");
System.out.println("5. Cari Linked List");
System.out.println("6. Cetak Linked List");
System.out.println("7. Exit");
System.out.print("Pilih = ");
pilih = sc.nextInt();
switch(pilih) {
case 1:
System.out.print("Masukkan kode barang = ");
String kd = sc.next();
System.out.print("Masukkan nama barang = ");
String nm = sc.next();
System.out.print("Masukkan harga barang = ");
int hrg = sc.nextInt();
cNode b1 = new cNode(kd, nm, hrg);
db.tambahNodeDepan(b1);
break;
case 2:
System.out.print("Masukkan kode barang = ");
kd = sc.next();
System.out.print("Masukkan nama barang = ");
nm = sc.next();
System.out.print("Masukkan harga barang = ");
hrg = sc.nextInt();
cNode b2 = new cNode(kd, nm, hrg);
db.tambahNodeBelakang(b2);
break;
case 3:
db.hapusNodeDepan();
break;
case 4:
db.hapusNodeBelakang();
break;
case 5:
System.out.print("Nama barang: ");
String c = sc.next();
db.cariNode(c);
break;
case 6:
db.cetakLinkedList();
break;
case 7:
System.out.println("Terima kasih...");
break;
}
} while(pilih != 7);

}

}

Tampilan Program

1. Tambah Node Depan dan Belakang







2. Hapus Node Depan dan Belakang






Comments

Popular posts from this blog

PROGRAM PUSTAKA ADT MENGGUNAKAN BAHASA PEMROGRAMAN JAVA

  Program Antrian Pembelian Tiket Pesawat Berikut ini merupakan contoh program Pustaka ADT pada bahasa pemrograman java menggunakan Queue dan juga Linked List: Source Code 1. Class appAntrianTiket import java.util.Queue; import java.util.LinkedList; import java.util.Scanner; public class appAntrianTiketPesawat { public static void main(String[] args) { int bagasi;     int hargaTiket=700000;     int hargaBagasi=4400;     String noAntrian,nama,bandaraAsal,bandaraTujuan; Queue q = new LinkedList(); Scanner s = new Scanner(System.in); int pilih=0; do { System.out.println("\nMENU PEMBELIAN TIKET PESAWAT");         System.out.println("1. Ambil nomor antrian");         System.out.println("2. Panggil antrian");         System.out.println("3. Daftar antrian");         System.out.println("4. Keluar");         System.out.print("...

PROGRAM DOUBLE LINKED LIST MENGGUNAKAN BAHASA PEMROGRAMAN JAVA

    Program Double Linked List Barang Berikut ini merupakan contoh program double linked list dengan bahasa pemrograman java untuk penyimpanan data barang: Source Code 1. Class cNode public class cNode { private String kode; private String nama; private int harga; cNode next, prev; cNode(String kd, String nm, int hrg){ kode=kd; nama=nm; harga=hrg; next=prev=null; System.out.println("Object "+kd+" "+nm+" "+hrg+" dibuat..."); } public String getKode() { return kode; } public String getNama() { return nama; } public int getHarga() { return harga; } public String ToString() { return "["+kode+"]"+"\t"+nama+"\t"+harga; } } 2. Class cDoubleLinkedList public class cDoubleLinkedList { cNode head, tail; int jNode; cDoubleLinkedList(){ head=tail=null; jNode=0; System.out.println("Object Double Linked List dibuat..."); } public void tambahN...

PROGRAM STACK SINGLE LINKED LIST MENGGUNAKAN BAHASA PEMROGRAMAN JAVA

  Program Stack Single Linked List Barang Berikut ini merupakan contoh program stack dengan single linked list menggunakan bahasa pemrograman java untuk penyimpanan data barang: Source Code 1. Class cElemen public class cElemen { private String nama; cElemen next; cElemen(String n){ nama=n; System.out.println("Object "+n+" created..."); } public String getNama() { return nama; } } 2. Class cStack public class cStack { //head dan tail cElemen top, bottom; int jumlah; cStack(){ top=bottom=null; jumlah=0; System.out.println("Object stack created..."); } public void push(cElemen baru) { if(top==null) { top=bottom=baru; } else { //tumpukan sudah ada isinya baru.next = top; top = baru; } System.out.println("Push OK..."); } public cElemen pop() { if(top==null) { System.out.println("Stack empty!"); return null; } else if(top.next==null) { cElemen t...