raffi_pratama

Untitled

Oct 26th, 2020
222
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.15 KB | None | 0 0
  1. import java.util.ArrayList;    
  2.  
  3. public class Auction  
  4. {  
  5.   private ArrayList<Lot> lots;  
  6.   private int nextLotNumber;
  7.  
  8.   public Auction()  
  9.   {  
  10.     lots = new ArrayList<Lot>();  
  11.     nextLotNumber = 1;  
  12.   }    
  13.    
  14.   public void enterLot(String description)  
  15.   {  
  16.     lots.add(new Lot(nextLotNumber, description));  
  17.     nextLotNumber++;  
  18.   }  
  19.    
  20.   public void showLots()  
  21.   {  
  22.     for(Lot lot : lots)  
  23.     {
  24.         System.out.println(lot.toString());  
  25.     }  
  26.   }  
  27.    
  28.   public void makeABid(int lotNumber, Person bidder, long value)  
  29.   {  
  30.     Lot selectedLot = getLot(lotNumber);  
  31.     if (selectedLot != null)  
  32.     {  
  33.       boolean succesful = selectedLot.bidFor(new Bid(bidder, value));  
  34.       if (succesful)  
  35.       {  
  36.         System.out.println("The bid for lot number " + lotNumber + " was succesful.");  
  37.       }  
  38.       else  
  39.       {  
  40.         Bid highestBid = selectedLot.getHighestBid();  
  41.         System.out.println("Lot number: " + lotNumber + " already has a bid of: " + highestBid.getValue());  
  42.       }  
  43.     }  
  44.   }  
  45.    
  46.   public Lot getLot(int lotNumber)  
  47.   {  
  48.     if((lotNumber >= 1) && (lotNumber < nextLotNumber))  
  49.     {  
  50.       Lot selectedLot = lots.get(lotNumber-1);    
  51.       if (selectedLot.getNumber() != lotNumber)  
  52.       {  
  53.         System.out.println("Internal error: Lot number " + selectedLot.getNumber() + " was returned instead of " + lotNumber);  
  54.         selectedLot = null;  
  55.       }  
  56.       return selectedLot;  
  57.     }  
  58.     else  
  59.     {  
  60.       System.out.println("Lot number: " + lotNumber + " does not exist.");  
  61.       return null;  
  62.     }  
  63.   }  
  64.  
  65.   public void close()  
  66.   {  
  67.     System.out.println("Closing auction.");  
  68.     for (Lot lot : lots)  
  69.     {  
  70.       System.out.println(lot.getNumber() + ": " + lot.getDescription());  
  71.       if (lot.getHighestBid() == null)  
  72.       {  
  73.         System.out.println (" (No bids) ");  
  74.       }  
  75.       else  
  76.       {  
  77.         Bid highestBid = lot.getHighestBid();  
  78.         System.out.println(" sold to " + highestBid.getBidder().getName() + " for " + highestBid.getValue());  
  79.       }  
  80.     }  
  81.   }  
  82. }
Add Comment
Please, Sign In to add comment