Dasar Program Java Berorientasi Objek
Linked List Series 1
The Objective
Buatlah program linked list dengan menu seperti untuk
mengelola data barang yang terdiri dari Kode , Nama , dan Harga..
Source Code
- appTokoRama (Main Linked List)
//F Ramaditya Arief Nursanto
//Linked List 1
public class appTokoRama {
public static void main(String[] args) {
cOperasiBarang tko = new cOperasiBarang(null);
Scanner input = new Scanner(System.in);
int opsi=0;
do{
System.out.println();
System.out.println("Menu Aplikasi Toko Rama");
System.out.println("1. Menambah Barang Baru");
System.out.println("2. Menghapus Barang Tersedia");
System.out.println("3. Mencari Barang Dalam Daftar");
System.out.println("4. Mencetak Daftar List Barang");
System.out.println("5. Keluar Dari Program");
System.out.print("Masukkan Opsi : ");
opsi=input.nextInt();
switch(opsi) {
case 1:
System.out.println();
System.out.print("Masukkan Kode Barang : ");
String kdb = input.next();
System.out.print("Masukkan Nama Barang : ");
input = new Scanner(System.in);
String nmb = input.nextLine();
System.out.print("Masukkan Harga Barang : ");
input = new Scanner(System.in);
int hgb = input.nextInt();
cBarangBaru brb = new cBarangBaru(kdb, nmb, hgb);
tko.menambahBarang(brb);
break;
case 2:
tko.menghapusBarang();
break;
case 3:
System.out.println();
System.out.print("Nama Barang yang Dicari : ");
String nbrb = input.next();
tko.mencariBarang(nbrb);
break;
case 4:
tko.mencetakBarang();
break;
case 5:
System.out.println("Sampai Jumpa & Terima Kasih!");
break;
default : System.out.println("Pastikan Untuk Memilih Menu yang Tersedia Ya");
}
}while(opsi!=5);
}
}
- cOperasiBarang (DaftarTerkait)
//Linked List
public class cOperasiBarang {
private cBarangBaru depan;
int dBarangBaru;
cOperasiBarang (cBarangBaru shelf) {
depan=shelf; dBarangBaru=0;
}
public void menambahBarang(cBarangBaru addition) {
if(depan==null) {
depan=addition;
}else {
addition.setselanjutnya(depan);
depan=addition;
}
dBarangBaru++;
System.out.println("Barang Berhasil Didaftarkan");
}
public String menghapusBarang() {
String tempKode=null;
String tempNama=null;
int tempHarga=0;
if(depan!=null) {
cBarangBaru all=depan.getselanjutnya();
tempKode=depan.getkodebarang();
tempNama=depan.getnamabarang();
depan.setselanjutnya(null);
depan=all;
dBarangBaru--;
System.out.println("Barang Tersebut Berhasil Dihapus dari Daftar");
}else {
System.out.println("Daftar Barang Saat ini Telah Kosong");
return tempKode+" "+tempNama+" "+tempHarga;
}
return tempNama;
}
public void mencariBarang(String src) {
boolean eksis = false;
System.out.println();
System.out.println("Hasil Mencari Barang Dari Daftar : ");
for(cBarangBaru all=depan; all!=null; all=all.getselanjutnya()) {
if(all.getnamabarang()==src) {
eksis = true;
break;
}
}
if(eksis==false) {
System.out.println("Barang Tersebut Tidak Ada Dalam Daftar");
}else{
System.out.println("Barang Tersebut Ditemukan");
}
}
public void mencetakBarang() {
System.out.println();
System.out.println("Daftar Barang di Toko Rama");
for(cBarangBaru all=depan; all!=null; all=all.lanjut) {
System.out.println("\nKode Produk : "+all.getkodebarang()+"\nNama Barang : "+all.getnamabarang()+"\nHarga Barang : "+all.gethargabarang());
}
}
}
- cBarangBaru (Node)
//F Ramaditya Arief Nursanto
//Linked List 1
public class cBarangBaru {
private String kodebarang;
private String namabarang;
private int hargabarang;
cBarangBaru lanjut;
cBarangBaru(String kdb, String nmb, int hgb) {
lanjut=null; kodebarang=kdb; namabarang=nmb; hargabarang=hgb;
}
//set Barang Baru
public void setkodebarang(String kdb) {
kodebarang=kdb;
}
public void setnamabarang(String nmb) {
namabarang=nmb;
}
public void sethargabarang(int hgb) {
hargabarang=hgb;
}
public void setselanjutnya(cBarangBaru lnjt){
lanjut=lnjt;
}
//get Barang Baru
public String getkodebarang() {
return kodebarang;
}
public String getnamabarang() {
return namabarang;
}
public int gethargabarang() {
return hargabarang;
}
public cBarangBaru getselanjutnya() {
return lanjut;
}
}
The Visual Output
- Tampilan Menu Aplikasi
- Mencari Barang
Catatan :
- Masih terdapat satu Bug dimana program tidak dapat melakukan pencarian barang yang dimaksud
- Bila gambar yang ditampilkan kurang jelas, mohon klik gambar tersebut.
Terimakasih telah berkunjung, have a nice day :))
Tidak ada komentar:
Posting Komentar