Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- import java.io.*;
- class ItemSorterByPrice implements Comparator<Item> {
- public int compare(Item i1, Item i2){
- return Double.compare(i1.getPrice(), i2.getPrice());
- }
- }
- public class Item implements Comparable<Item> {
- private String name;
- private double price;
- public Item(String name, double price){
- setName(name);
- setPrice(price);
- }
- public Item(Item item){
- setName(item.getName());
- setPrice(item.getPrice());
- }
- public int compareTo(Item item){
- int temp = this.name.compareTo(item.name);
- if (temp == 0){
- return Double.compare(this.price, item.price);
- } else
- return temp;
- }
- private void setName(String name){
- this.name = name;
- }
- public String getName(){
- return name;
- }
- public void setPrice(double price){
- if (price >= 0)
- this.price = price;
- else
- throw new IllegalArgumentException("Price cannot be negative");
- }
- public double getPrice(){
- return price;
- }
- public String toString(){
- return getName() + " @ " + getPrice();
- }
- /*
- public static void main(String [] args){
- ArrayList<Item> list = new ArrayList<>();
- Item item1 = new Item("saldainis", 1.1);
- Item item2 = new Item("saldainis", 2.1);
- Item item3 = new Item("sultys", 3.1);
- Item item4 = new Item("saldainis", 4.1);
- list.add(item4);
- list.add(item3);
- list.add(item2);
- list.add(item2);
- list.add(item1);
- list.add(item1);
- list.add(item3);
- list.add(item1);
- Collections.sort(list, new ItemSorterByPrice());
- for(int i = 0; i < list.size(); ++i){
- System.out.println(list.get(i));
- }
- }
- */
- }
Add Comment
Please, Sign In to add comment