irmantas_radavicius

Item.java

Mar 27th, 2022 (edited)
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.63 KB | None | 0 0
  1. import java.util.*;
  2. import java.io.*;
  3.  
  4. class ItemSorterByPrice implements Comparator<Item> {
  5.     public int compare(Item i1, Item i2){
  6.         return Double.compare(i1.getPrice(), i2.getPrice());
  7.     }
  8. }
  9.  
  10. public class Item implements Comparable<Item> {
  11.     private String name;
  12.     private double price;
  13.    
  14.     public Item(String name, double price){
  15.         setName(name);
  16.         setPrice(price);
  17.     }
  18.     public Item(Item item){
  19.         setName(item.getName());
  20.         setPrice(item.getPrice());
  21.     }
  22.    
  23.     public int compareTo(Item item){
  24.         int temp = this.name.compareTo(item.name);
  25.         if (temp == 0){        
  26.             return Double.compare(this.price, item.price);
  27.         } else
  28.             return temp;       
  29.     }
  30.     private void setName(String name){
  31.         this.name = name;
  32.     }
  33.     public String getName(){
  34.         return name;
  35.     }
  36.    
  37.     public void setPrice(double price){
  38.         if (price >= 0)
  39.             this.price = price;
  40.         else
  41.             throw new IllegalArgumentException("Price cannot be negative");
  42.     }
  43.     public double getPrice(){
  44.         return price;
  45.     }
  46.    
  47.     public String toString(){
  48.         return getName() + " @ " + getPrice();
  49.     }
  50.     /*
  51.     public static void main(String [] args){
  52.         ArrayList<Item> list = new ArrayList<>();
  53.        
  54.         Item item1 = new Item("saldainis", 1.1);
  55.         Item item2 = new Item("saldainis", 2.1);
  56.         Item item3 = new Item("sultys", 3.1);          
  57.         Item item4 = new Item("saldainis", 4.1);           
  58.        
  59.         list.add(item4);
  60.         list.add(item3);
  61.         list.add(item2);
  62.         list.add(item2);
  63.         list.add(item1);
  64.         list.add(item1);           
  65.         list.add(item3);
  66.         list.add(item1);
  67.        
  68.         Collections.sort(list, new ItemSorterByPrice());
  69.        
  70.         for(int i = 0; i < list.size(); ++i){
  71.             System.out.println(list.get(i));
  72.         }
  73.     }
  74.     */
  75. }
  76.  
  77.  
Add Comment
Please, Sign In to add comment