Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Kelas untuk memodelkan item (atau sekumpulan item)
- * dalam lelang: lot.
- *
- * @author Thomasdwi.a
- * @version 20201025
- */
- public class Lot {
- // angka pada lot
- private final int number;
- // deskripsi pada lot
- private final 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
- * harus punya nilai yang lebih tinggi dari nilai yang ada
- * @param bid = tawaran yang baru.
- * @return true jika benar
- */
- public boolean bidFor( Bid bid)
- {
- if( highestBid == null)
- {
- // jika tidak ada tawaran sebelumnya
- highestBid = bid;
- return true;
- }
- else if(bid.getValue() > highestBid.getValue())
- {
- //jika nilai bid lebih besar dari yang sebelumnya
- highestBid = bid;
- return true;
- }
- else{
- // nilai bid tidak lebih besar
- return false;
- }
- }
- /**
- * @return tampilan isi lot berupa string.
- */
- public String toString()
- {
- String details = number + ": " + description;
- if(highestBid != null) {
- details += " penawaran: " + highestBid.getValue();
- }
- else {
- details += " (Belum 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 tawaran.
- */
- public Bid getHighestBid()
- {
- return highestBid;
- }
- }
Add Comment
Please, Sign In to add comment