document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. /**
  2.  * class Lot
  3.  * @author (etta)
  4.  * @version (25 September 2020)
  5.  */
  6.  
  7. public class Lot
  8. {
  9.     // Angka pada lot
  10.     private final int number;
  11.     // Deskripsi pada lot
  12.     private final String description;
  13.     // Nilai tawaran tertinggi pada lot
  14.     private Bid highestBid;
  15.     /**
  16.      * Membuat sebuah Lot, mengatur deskripsi dan nilainya
  17.      * @param number = nomor lot
  18.      * @param description = deskripsi lot
  19.      */
  20.     public Lot(int number, String description)
  21.     {
  22.         this.number = number;
  23.         this.description = description;
  24.         this.highestBid = null;
  25.     }
  26.    
  27.     /**
  28.      * Percobaan untuk menawar lot (tawaran berhasil)
  29.      * Harus memiliki nilai yang lebih tinggi dari nilai yang ada
  30.      * @param bid = tawaran yang baru
  31.      * @return true jika benar
  32.      */
  33.     public boolean bidFor(Bid bid)
  34.     {
  35.         if(highestBid == null)
  36.         {
  37.             // jika tidak ada tawaran sebelumnya
  38.             highestBid = bid;
  39.             return true;
  40.         }
  41.         else if(bid.getValue() > highestBid.getValue())
  42.         {
  43.             //jika nilai bid lebih besar dari yang sebelumnya
  44.             highestBid = bid;
  45.             return true;
  46.         }
  47.         else
  48.         {
  49.             // nilai bid tidak lebih besar
  50.             return false;
  51.         }
  52.     }
  53.    
  54.     /**
  55.      * return tampilan isi lot berupa string
  56.      */
  57.     public String toString()
  58.     {
  59.         String details = number + ": " + description;
  60.         if(highestBid != null)
  61.         {
  62.             details += "    penawaran : " + highestBid.getValue();
  63.  
  64.         }
  65.         else
  66.         {
  67.             details += "    (Belum ada penawaran)";
  68.         }
  69.         return details;
  70.     }
  71.  
  72.     /**
  73.      * return angka pada lot
  74.      */
  75.     public int getNumber()
  76.     {
  77.         return number;
  78.     }
  79.  
  80.     /**
  81.      * return deskripsi pada lot
  82.      */
  83.     public String getDescription()
  84.     {
  85.         return description;
  86.     }
  87.    
  88.     /**
  89.      * return nilai tawaran tertinggi
  90.      * Dapat bernilai null, jika tidak ada tawaran
  91.      */
  92.     public Bid getHighestBid()
  93.     {
  94.         return highestBid;
  95.     }
  96. }
');