Grouping Object Pada PBO
Selamat datang di blog pribadi saya, saya Abdun Nafi' NRP 05111940000066. Disini saya akan melanjutkan tugas PBO saya yang ke 4 yaitu mencoba latihan Grouping Object dengan implementasi Java Collection yang terdapat pada Website bapak fajar baskoro dan mencoba Auction System (System Lelang).
Seperti Berikut Tampilan Auction System :
Apa itu Java Collection?
Java Collections adalah sebuah framework yang menyediakan sejumlah operasi dalam sebuah koleksi. Operasi yang disediakan Java Collections meliputi pencarian, pengurutan, memasukkan, manipulasi, menghapus, dan lainnya. Java Collection menyediakan dalam bentuk interfaces Set, List, Queue, Deque, dan lainnya, dan dalam bentuk class ArrayList, Vector, LinkedList, PriorityQueue, HashSet, LinkedHashSet, TreeSet, dll.
Baik Langsung saja kepada latihan yaitu :
1. ArrayList While
Menampilkan Array dengan menggunakan perulangan While berikut kodingannya:
/** | |
* Contoh ArrayList. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 27102020 | |
*/ | |
import java.util.*; | |
public class ArrayListContoh | |
{ | |
public static void main(String[] args){ | |
//membuat arraylist | |
ArrayList <String> al = new ArrayList<String>(); | |
//menambah object ke arraylist | |
al.add("Ahmad"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dora"); | |
//menampilkan isi | |
Iterator itr = al.iterator(); | |
while(itr.hasNext()){ | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
2. Array List Menggunakan For
Menampilkan Array dengan menggunakan perulangan For, berikut kodingannya:
/** | |
* ArrayListFor | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.ArrayList; | |
public class ArrayListFor | |
{ | |
public static void main(String[] args){ | |
//membuat arraylist | |
ArrayList<String> al = new ArrayList<String>(); | |
//menambahkan object | |
al.add("Ahmad"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dora"); | |
//menampilkan isi arrayList | |
for(String obj:al){ | |
System.out.println(obj); | |
} | |
} | |
} |
Output :
3. Array List Class Mahasiswa
Menampilkan data mahasiswa dengan menggunakan Array list. Untuk menampilkan diperlukan class mahasiswa berikut kodingan dari class Mahasiswa dan Class ArrayListClass.
a. Class Mahasiswa
/** | |
* Class Mahasiswa | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
public class Mahasiswa { | |
//Atribut dari mahasiswa | |
private String nim ; | |
private String nama; | |
private int uts; | |
private int uas; | |
private int tugas; | |
public Mahasiswa (String Nim,String Nama, int Tugas, int UTS, int UAS) | |
{ | |
nim = Nim; | |
nama = Nama; | |
tugas = Tugas; | |
uts = UTS; | |
uas = UAS; | |
} | |
public String getNim() | |
{ | |
return nim; | |
} | |
public String getNama() | |
{ | |
return nama ; | |
} | |
public int getTugas() | |
{ | |
return tugas; | |
} | |
public int getUts() | |
{ | |
return uts; | |
} | |
public int getUas() | |
{ | |
return uas; | |
} | |
} |
b. Class ArrayListClass
/** | |
* ArrayListClass here. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
public class ArrayListClass{ | |
public static void main(String[] args){ | |
//Data | |
Mahasiswa mhs1 = new Mahasiswa ("K121", "Adam Kamil", 67, 69, 91); | |
Mahasiswa mhs2 = new Mahasiswa ("K122", "Budi Ridho", 57, 89, 93); | |
Mahasiswa mhs3 = new Mahasiswa ("K123", "Cecep Mansyur", 77, 79, 80); | |
Mahasiswa mhs4 = new Mahasiswa ("K124", "Dadang Habibie", 67, 79, 60); | |
Mahasiswa mhs5 = new Mahasiswa ("K125", "Evi Julita", 89, 79, 95); | |
//membuat arraylist | |
ArrayList<Mahasiswa> al = new ArrayList<Mahasiswa>(); | |
//menambahkan objek ke arrayList | |
al.add(mhs1); | |
al.add(mhs2); | |
al.add(mhs3); | |
al.add(mhs4); | |
al.add(mhs5); | |
//menampilkan isi | |
Iterator itr=al.iterator(); | |
while(itr.hasNext()){ | |
Mahasiswa tampungMhs = (Mahasiswa)itr.next(); | |
System.out.print(tampungMhs.getNim()+" "); | |
System.out.print(tampungMhs.getNama()+" "); | |
System.out.print(tampungMhs.getTugas()+" "); | |
System.out.print(tampungMhs.getUts()+" "); | |
System.out.println(tampungMhs.getUas()+" "); | |
} | |
} | |
} |
Output :
4. ArrayList Gabung
Menampilkan hasil dari 2 Array yang kita bikin menggunakan addAll berikut kodingannya :
/** | |
* Menggabungkan ArrayList | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.ArrayList; | |
import java.util.Iterator; | |
public class ArrayListGabung{ | |
public static void main(String[] args){ | |
//membuat arraylist | |
ArrayList<String> al = new ArrayList <String>(); | |
//menambahkan objek ke arrayList | |
al.add("Ani"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dani"); | |
ArrayList<String> al2 = new ArrayList <String>(); | |
al2.add("Endi"); | |
al2.add("Fani"); | |
//Menambahkan menggabungkan ArrayList | |
al.addAll(al2); | |
//menampilkan isi arrayList | |
Iterator itr=al.iterator(); | |
while(itr.hasNext()){ | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
5. RemoveAll Array List
Menghapus data Array 1 yang diminta pada data Array 2 dengan menggunakan Java Collection RemoveAll berikut kodinganya:
/** | |
* RemoveAll pada ArrayList | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.ArrayList; | |
import java.util.Iterator; | |
public class ArrayListRemoveAll{ | |
public static void main (String[] args){ | |
//membuat arraylist1 | |
ArrayList<String> al = new ArrayList<String>(); | |
//menambahkan objek ke arraylist1 | |
al.add("Ani"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dani"); | |
//membuat arraylist2 | |
ArrayList<String> al2 = new ArrayList <String>(); | |
//menambahkan objek ke arraylist2 | |
al2.add("Eko"); | |
al2.add("Budi"); | |
//remove arraylist2 | |
al.removeAll(al2); | |
//menampilkan isi arraylist | |
Iterator itr=al.iterator(); | |
while(itr.hasNext()){ | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
6. RetainAll pada Array List
Menahan data yang tidak sama pada kedua array dengan menggunakan RetainAll berikut kodingannya:
/** | |
* RetainAll pada ArrayList(Menggabungkan yang sama dari 2 ArrayList) | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.ArrayList; | |
import java.util.Iterator; | |
public class ArrayListRetainAll{ | |
public static void main (String[] args){ | |
//membuat arraylist | |
ArrayList<String> al = new ArrayList<String>(); | |
//menambahkan objek ke arraylist | |
al.add("Ani"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dani"); | |
//membuat arraylist2 | |
ArrayList<String> al2 = new ArrayList <String>(); | |
//menambahkan objek ke arraylist2 | |
al2.add("Dani"); | |
al2.add("Edo"); | |
al.retainAll(al2); | |
//menampilkan isi arraylist | |
Iterator itr=al.iterator(); | |
while(itr.hasNext()){ | |
System.out.println(itr.next()); | |
} | |
} | |
} | |
Output :
7. LinkedList
Menampilkan LinkedList berikut kodingannya :
/** | |
* LinkedList | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
public class LinkedListContoh{ | |
public static void main(String args[]) | |
{ | |
LinkedList<String> al=new LinkedList<String>(); | |
al.add("Zaza"); | |
al.add("Yadi"); | |
al.add("Mutiara"); | |
al.add("Santoso"); | |
Iterator<String> itr=al.iterator(); | |
while(itr.hasNext()) { | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
8. HashSet
/** | |
* Contoh HashSet | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
class HashSetContoh{ | |
public static void main(String args[]){ | |
HashSet<String> al=new HashSet<String>(); | |
al.add("Anto"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dani"); | |
al.add("Eka"); | |
Iterator<String> itr=al.iterator(); | |
while(itr.hasNext()) { | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
9. LinkedHashSet
/** | |
* Contoh LinkedHashSet here. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.LinkedHashSet; | |
import java.util.Iterator; | |
class LinkedHashSetContoh{ | |
public static void main(String args[]){ | |
LinkedHashSet<String> al=new LinkedHashSet<String>(); | |
al.add("Anto"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dudi"); | |
al.add("Eka"); | |
Iterator<String> itr=al.iterator(); | |
while(itr.hasNext()) { | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
10. HashMap
/** | |
* Contoh HashMap here. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
class HashMapContoh{ | |
public static void main(String args[]){ | |
HashMap<Integer,String> hm=new HashMap<Integer,String>(); | |
hm.put(100,"Kano"); | |
hm.put(101,"Laila"); | |
hm.put(102,"Badu"); | |
hm.put(null, "Johan"); | |
for(Map.Entry m:hm.entrySet()) { | |
System.out.println(m.getKey()+" "+m.getValue()); | |
} | |
} | |
} |
Output:
11. Hash Table
/** | |
* Contoh HashTable here. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
class HashTableContoh{ | |
public static void main(String args[]){ | |
Hashtable<Integer,String> hm=new Hashtable<Integer,String>(); | |
hm.put(100,"Andri"); | |
hm.put(102,"Roni"); | |
hm.put(101,"Fahrul"); | |
hm.put(103,"Badu"); | |
for(Map.Entry m:hm.entrySet()){ | |
System.out.println(m.getKey()+" "+m.getValue()); | |
} | |
} | |
} |
Output:
Selamat datang di blog pribadi saya, saya Abdun Nafi' NRP 05111940000066. Disini saya akan melanjutkan tugas PBO saya yang ke 4 yaitu mencoba latihan Grouping Object dengan implementasi Java Collection yang terdapat pada Website bapak fajar baskoro dan mencoba Auction System (System Lelang).
Seperti Berikut Tampilan Auction System :
Apa itu Java Collection?
Java Collections adalah sebuah framework yang menyediakan sejumlah operasi dalam sebuah koleksi. Operasi yang disediakan Java Collections meliputi pencarian, pengurutan, memasukkan, manipulasi, menghapus, dan lainnya. Java Collection menyediakan dalam bentuk interfaces Set, List, Queue, Deque, dan lainnya, dan dalam bentuk class ArrayList, Vector, LinkedList, PriorityQueue, HashSet, LinkedHashSet, TreeSet, dll.
Baik Langsung saja kepada latihan yaitu :
1. ArrayList While
Menampilkan Array dengan menggunakan perulangan While berikut kodingannya:
/** | |
* Contoh ArrayList. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 27102020 | |
*/ | |
import java.util.*; | |
public class ArrayListContoh | |
{ | |
public static void main(String[] args){ | |
//membuat arraylist | |
ArrayList <String> al = new ArrayList<String>(); | |
//menambah object ke arraylist | |
al.add("Ahmad"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dora"); | |
//menampilkan isi | |
Iterator itr = al.iterator(); | |
while(itr.hasNext()){ | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
2. Array List Menggunakan For
Menampilkan Array dengan menggunakan perulangan For, berikut kodingannya:
/** | |
* ArrayListFor | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.ArrayList; | |
public class ArrayListFor | |
{ | |
public static void main(String[] args){ | |
//membuat arraylist | |
ArrayList<String> al = new ArrayList<String>(); | |
//menambahkan object | |
al.add("Ahmad"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dora"); | |
//menampilkan isi arrayList | |
for(String obj:al){ | |
System.out.println(obj); | |
} | |
} | |
} |
Output :
3. Array List Class Mahasiswa
Menampilkan data mahasiswa dengan menggunakan Array list. Untuk menampilkan diperlukan class mahasiswa berikut kodingan dari class Mahasiswa dan Class ArrayListClass.
a. Class Mahasiswa
/** | |
* Class Mahasiswa | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
public class Mahasiswa { | |
//Atribut dari mahasiswa | |
private String nim ; | |
private String nama; | |
private int uts; | |
private int uas; | |
private int tugas; | |
public Mahasiswa (String Nim,String Nama, int Tugas, int UTS, int UAS) | |
{ | |
nim = Nim; | |
nama = Nama; | |
tugas = Tugas; | |
uts = UTS; | |
uas = UAS; | |
} | |
public String getNim() | |
{ | |
return nim; | |
} | |
public String getNama() | |
{ | |
return nama ; | |
} | |
public int getTugas() | |
{ | |
return tugas; | |
} | |
public int getUts() | |
{ | |
return uts; | |
} | |
public int getUas() | |
{ | |
return uas; | |
} | |
} |
b. Class ArrayListClass
/** | |
* ArrayListClass here. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
public class ArrayListClass{ | |
public static void main(String[] args){ | |
//Data | |
Mahasiswa mhs1 = new Mahasiswa ("K121", "Adam Kamil", 67, 69, 91); | |
Mahasiswa mhs2 = new Mahasiswa ("K122", "Budi Ridho", 57, 89, 93); | |
Mahasiswa mhs3 = new Mahasiswa ("K123", "Cecep Mansyur", 77, 79, 80); | |
Mahasiswa mhs4 = new Mahasiswa ("K124", "Dadang Habibie", 67, 79, 60); | |
Mahasiswa mhs5 = new Mahasiswa ("K125", "Evi Julita", 89, 79, 95); | |
//membuat arraylist | |
ArrayList<Mahasiswa> al = new ArrayList<Mahasiswa>(); | |
//menambahkan objek ke arrayList | |
al.add(mhs1); | |
al.add(mhs2); | |
al.add(mhs3); | |
al.add(mhs4); | |
al.add(mhs5); | |
//menampilkan isi | |
Iterator itr=al.iterator(); | |
while(itr.hasNext()){ | |
Mahasiswa tampungMhs = (Mahasiswa)itr.next(); | |
System.out.print(tampungMhs.getNim()+" "); | |
System.out.print(tampungMhs.getNama()+" "); | |
System.out.print(tampungMhs.getTugas()+" "); | |
System.out.print(tampungMhs.getUts()+" "); | |
System.out.println(tampungMhs.getUas()+" "); | |
} | |
} | |
} |
Output :
4. ArrayList Gabung
Menampilkan hasil dari 2 Array yang kita bikin menggunakan addAll berikut kodingannya :
/** | |
* Menggabungkan ArrayList | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.ArrayList; | |
import java.util.Iterator; | |
public class ArrayListGabung{ | |
public static void main(String[] args){ | |
//membuat arraylist | |
ArrayList<String> al = new ArrayList <String>(); | |
//menambahkan objek ke arrayList | |
al.add("Ani"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dani"); | |
ArrayList<String> al2 = new ArrayList <String>(); | |
al2.add("Endi"); | |
al2.add("Fani"); | |
//Menambahkan menggabungkan ArrayList | |
al.addAll(al2); | |
//menampilkan isi arrayList | |
Iterator itr=al.iterator(); | |
while(itr.hasNext()){ | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
5. RemoveAll Array List
Menghapus data Array 1 yang diminta pada data Array 2 dengan menggunakan Java Collection RemoveAll berikut kodinganya:
/** | |
* RemoveAll pada ArrayList | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.ArrayList; | |
import java.util.Iterator; | |
public class ArrayListRemoveAll{ | |
public static void main (String[] args){ | |
//membuat arraylist1 | |
ArrayList<String> al = new ArrayList<String>(); | |
//menambahkan objek ke arraylist1 | |
al.add("Ani"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dani"); | |
//membuat arraylist2 | |
ArrayList<String> al2 = new ArrayList <String>(); | |
//menambahkan objek ke arraylist2 | |
al2.add("Eko"); | |
al2.add("Budi"); | |
//remove arraylist2 | |
al.removeAll(al2); | |
//menampilkan isi arraylist | |
Iterator itr=al.iterator(); | |
while(itr.hasNext()){ | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
6. RetainAll pada Array List
Menahan data yang tidak sama pada kedua array dengan menggunakan RetainAll berikut kodingannya:
/** | |
* RetainAll pada ArrayList(Menggabungkan yang sama dari 2 ArrayList) | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.ArrayList; | |
import java.util.Iterator; | |
public class ArrayListRetainAll{ | |
public static void main (String[] args){ | |
//membuat arraylist | |
ArrayList<String> al = new ArrayList<String>(); | |
//menambahkan objek ke arraylist | |
al.add("Ani"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dani"); | |
//membuat arraylist2 | |
ArrayList<String> al2 = new ArrayList <String>(); | |
//menambahkan objek ke arraylist2 | |
al2.add("Dani"); | |
al2.add("Edo"); | |
al.retainAll(al2); | |
//menampilkan isi arraylist | |
Iterator itr=al.iterator(); | |
while(itr.hasNext()){ | |
System.out.println(itr.next()); | |
} | |
} | |
} | |
Output :
7. LinkedList
Menampilkan LinkedList berikut kodingannya :
/** | |
* LinkedList | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
public class LinkedListContoh{ | |
public static void main(String args[]) | |
{ | |
LinkedList<String> al=new LinkedList<String>(); | |
al.add("Zaza"); | |
al.add("Yadi"); | |
al.add("Mutiara"); | |
al.add("Santoso"); | |
Iterator<String> itr=al.iterator(); | |
while(itr.hasNext()) { | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
8. HashSet
/** | |
* Contoh HashSet | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
class HashSetContoh{ | |
public static void main(String args[]){ | |
HashSet<String> al=new HashSet<String>(); | |
al.add("Anto"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dani"); | |
al.add("Eka"); | |
Iterator<String> itr=al.iterator(); | |
while(itr.hasNext()) { | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
9. LinkedHashSet
/** | |
* Contoh LinkedHashSet here. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.LinkedHashSet; | |
import java.util.Iterator; | |
class LinkedHashSetContoh{ | |
public static void main(String args[]){ | |
LinkedHashSet<String> al=new LinkedHashSet<String>(); | |
al.add("Anto"); | |
al.add("Budi"); | |
al.add("Cecep"); | |
al.add("Dudi"); | |
al.add("Eka"); | |
Iterator<String> itr=al.iterator(); | |
while(itr.hasNext()) { | |
System.out.println(itr.next()); | |
} | |
} | |
} |
Output :
10. HashMap
/** | |
* Contoh HashMap here. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
class HashMapContoh{ | |
public static void main(String args[]){ | |
HashMap<Integer,String> hm=new HashMap<Integer,String>(); | |
hm.put(100,"Kano"); | |
hm.put(101,"Laila"); | |
hm.put(102,"Badu"); | |
hm.put(null, "Johan"); | |
for(Map.Entry m:hm.entrySet()) { | |
System.out.println(m.getKey()+" "+m.getValue()); | |
} | |
} | |
} |
Output:
11. Hash Table
/** | |
* Contoh HashTable here. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
class HashTableContoh{ | |
public static void main(String args[]){ | |
Hashtable<Integer,String> hm=new Hashtable<Integer,String>(); | |
hm.put(100,"Andri"); | |
hm.put(102,"Roni"); | |
hm.put(101,"Fahrul"); | |
hm.put(103,"Badu"); | |
for(Map.Entry m:hm.entrySet()){ | |
System.out.println(m.getKey()+" "+m.getValue()); | |
} | |
} | |
} |
Output:
/** | |
* class Auction. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.ArrayList; | |
public class Auction { | |
// list jumlah lelang | |
private ArrayList<Lot> lots; | |
// angka untuk lot berikutnya | |
private int nextLotNumber; | |
//membuat lelang baru | |
public Auction(){ | |
lots = new ArrayList<Lot>(); | |
nextLotNumber = 1; | |
} | |
/** memasukan lot baru pelelangan | |
* @param description = deskripsi dari lot | |
*/ | |
public void enterLot(String description){ | |
lots.add(new Lot(nextLotNumber, description)); | |
nextLotNumber++; | |
} | |
/** | |
* Tampilkan daftar barang lelang | |
*/ | |
public void showLots() | |
{ | |
for(Lot lot : lots){ | |
System.out.println(lot.toString()); | |
} | |
} | |
/** | |
* Buat penawaran untuk barang. | |
* Sebuah pesan akan dicetak jika penawaran berhasil atau tidak. | |
* @param lotNumber Lot yang ditawarkan. | |
* @param bidder Orang yang melakukan penawaran. | |
* @param value Nilai penawaran. | |
*/ | |
public void makeABid(int lotNumber, Person bidder, long value) | |
{ | |
Lot selectedLot = getLot(lotNumber); | |
if(selectedLot != null) | |
{ | |
Bid bid =new Bid(bidder,value); | |
boolean successful = selectedLot.bidFor(bid); | |
if(successful){ | |
System.out.println("Penawaran pada nomor lot " + | |
lotNumber + " telah berhasil"); | |
} | |
else { | |
// melaporkan nilai penawaran tertinggi | |
Bid highestBid = selectedLot.getHighestBid(); | |
System.out.println("Lot nomor " + lotNumber + | |
" telah ditawar dengan jumlah " + | |
highestBid.getValue() ) ; | |
} | |
} | |
} | |
/** | |
* Return lot yang sudah diberi nomor. Return null | |
* jika lot dengan nomor tersebut tidak ada. | |
* @param lotNumber nomor lot yang return. | |
*/ | |
public Lot getLot(int lotNumber) | |
{ | |
if((lotNumber >= 1) && (lotNumber < nextLotNumber)) | |
{ | |
Lot selectedLot = lots.get(lotNumber - 1); | |
if(selectedLot.getNumber() != lotNumber){ | |
System.out.println("Internal error: Lot number " + | |
selectedLot.getNumber() + | |
" was returned instead of "+ | |
lotNumber); | |
selectedLot = null; | |
} | |
return selectedLot; | |
} | |
else{ | |
System.out.println("Nomor lot "+ lotNumber + | |
" tidak ada"); | |
return null; | |
} | |
} | |
/** | |
* Menutup lelang dan menampilkan hasil lelang | |
*/ | |
public void close() { | |
System.out.println("Lelang selesai."); | |
for(Lot lot : lots) { | |
System.out.print(lot.getNumber() + ": " + lot.getDescription()); | |
if ( lot.getHighestBid() == null ) { | |
System.out.println(" tidak ada penawaran"); | |
} | |
else { | |
Bid highestBid = lot.getHighestBid(); | |
System.out.println(" barang terjual kepada " + | |
highestBid.getBidder().getName() + " seharga " + highestBid.getValue()); | |
} | |
} | |
} | |
} | |
/** | |
* Lot Class | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
import javax.swing.*; | |
public class Lot { | |
// angka pada lot | |
private final int number; | |
// deskripsi pada lot | |
private String description; | |
// Nilai tawaran tertinggi pada lot | |
private Bid highestBid; | |
/** | |
* membuat sebuah Lot, mengatur deskripsi dan nilainya | |
* @param number Nomor lot | |
* @param description Deskripsi lot | |
*/ | |
public Lot(int number, String description) | |
{ | |
this.number = number; | |
this.description = description; | |
this.highestBid = null; | |
} | |
/** | |
* Percobaan untuk menawar pada lot ini. | |
* Tawaran yang berhasil memiliki nilai lebuh tunggi dari penawaran yang ada. | |
* @param bid = tawaran yang baru. | |
* @return true jika benar | |
*/ | |
public boolean bidFor(Bid bid) | |
{ | |
if(highestBid == null) | |
{ | |
highestBid = bid; | |
return true; | |
} | |
else if(bid.getValue() > highestBid.getValue()) | |
{ | |
highestBid = bid; | |
return true; | |
} | |
else | |
{ | |
return false; | |
} | |
} | |
/** | |
* @return tampilan isi lot berupa string. | |
*/ | |
public String toString() | |
{ | |
String details = number + ": " + description; | |
if(highestBid != null) | |
{ | |
details += " Penawaran: " + highestBid.getValue(); | |
} | |
else | |
{ | |
details += " (Tidak ada penawaran)"; | |
} | |
return details; | |
} | |
/** | |
* @return angka pada lot | |
*/ | |
public int getNumber() | |
{ | |
return number; | |
} | |
/** | |
* @return deskripsi pada lot | |
*/ | |
public String getDescription() | |
{ | |
return description; | |
} | |
/** | |
* @return Nilai tawaran tertinggi. | |
* Bisa saja bernilai null jika tidak ada penawaran. | |
*/ | |
public Bid getHighestBid() | |
{ | |
return highestBid; | |
} | |
} |
/** | |
* Isi class Person. | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import java.util.*; | |
import javax.swing.*; | |
public class Person | |
{ | |
private final String name; | |
/** | |
* Create a new person. | |
* @param name The person's name. | |
*/ | |
public Person (String name) | |
{ | |
this.name = name; | |
} | |
/** | |
* @return The person's name. | |
*/ | |
public String getName() | |
{ | |
return name; | |
} | |
} |
/** | |
* Bid Class | |
* | |
* @author Abdun Nafi' | |
* @version 0.1 | |
*/ | |
import javax.swing.*; | |
public class Bid | |
{ | |
private final Person bidder; | |
private final long value; | |
/** | |
* Buat penawaran | |
* @param bidder Penawar barang | |
* @param value Nilai penawaran | |
*/ | |
public Bid(Person bidder, long value) | |
{ | |
this.bidder = bidder; | |
this.value = value; | |
} | |
/** | |
* @return Penawar. | |
*/ | |
public Person getBidder() | |
{ | |
return bidder; | |
} | |
/** | |
* @return Nilai penawaran. | |
*/ | |
public long getValue() | |
{ | |
return value; | |
} | |
} |
Komentar
Posting Komentar