mbah_bejo

Lot

Oct 24th, 2020
288
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.22 KB | None | 0 0
  1. /**
  2.  * Kelas untuk memodelkan item (atau sekumpulan item)
  3.  * dalam lelang: lot.
  4.  *
  5.  * @author Thomasdwi.a
  6.  * @version 20201025
  7.  */
  8.  
  9. public class Lot {
  10.  
  11.     // angka pada lot
  12.     private final int number;
  13.     // deskripsi pada lot
  14.     private final String description;
  15.     // Nilai tawaran tertinggi pada lot
  16.     private Bid highestBid;
  17.  
  18.  
  19.     /**
  20.      * membuat sebuah Lot, mengatur deskripsi dan nilainya
  21.      * @param number = nomor lot
  22.      * @param description = deskripsi lot
  23.      */
  24.  
  25.     public Lot(int number, String description)
  26.     {
  27.         this.number = number;
  28.         this.description = description;
  29.         this.highestBid = null;
  30.     }
  31.     /**
  32.      * Percobaan untuk menawar pada lot ini. Tawaran yang berhasil
  33.      * harus punya nilai yang lebih tinggi dari nilai yang ada
  34.      * @param bid = tawaran yang baru.
  35.      * @return true jika benar
  36.      */
  37.  
  38.     public  boolean bidFor( Bid bid)
  39.     {
  40.         if( highestBid == null)
  41.         {
  42.             // jika tidak ada tawaran sebelumnya
  43.             highestBid = bid;
  44.             return  true;
  45.         }
  46.         else if(bid.getValue() > highestBid.getValue())
  47.         {
  48.             //jika nilai bid lebih besar dari yang sebelumnya
  49.             highestBid = bid;
  50.             return true;
  51.         }
  52.         else{
  53.             // nilai bid tidak lebih besar
  54.             return false;
  55.         }
  56.     }
  57.  
  58.     /**
  59.      * @return tampilan isi lot berupa string.
  60.      */
  61.     public String toString()
  62.     {
  63.         String details = number + ": " + description;
  64.         if(highestBid != null) {
  65.             details += "    penawaran: " + highestBid.getValue();
  66.  
  67.         }
  68.         else {
  69.             details += "    (Belum ada penawaran)";
  70.         }
  71.         return details;
  72.     }
  73.  
  74.     /**
  75.      * @return angka pada lot
  76.      */
  77.     public int getNumber()
  78.     {
  79.         return number;
  80.     }
  81.  
  82.     /**
  83.      * @return deskripsi pada lot
  84.      */
  85.     public String getDescription()
  86.     {
  87.         return description;
  88.     }
  89.  
  90.     /**
  91.      * @return nilai tawaran tertinggi.
  92.      *         Bisa saja bernilai null
  93.      *         jika tidak ada tawaran.
  94.      */
  95.     public Bid getHighestBid()
  96.     {
  97.         return highestBid;
  98.     }
  99. }
  100.  
Add Comment
Please, Sign In to add comment