package VorlesungsFolien.SortierenmitComparatoren_Comparable;

import java.util.*;

public class Produkt {
	private String name;
	private double preis;

	public Produkt(String name, double preis) {
		super();
		this.name = name;
		this.preis = preis;
	}
	
	

	
	@Override
	public String toString() {
		return "Produkt [name=" + name + ", preis=" + preis + "]";
	}




	public static void main(String[] args) {
		ArrayList<Produkt> arr = new ArrayList<>();

		arr.add(new Produkt("d", 12.0));
		arr.add(new Produkt("c", 15.0));
		arr.add(new Produkt("a", 13.0));
		arr.add(new Produkt("b", 11.0));

		Comparator<Produkt> preisAufsteigend = new Comparator<>() {

			@Override
			public int compare(Produkt o1, Produkt o2) {
				if (o1.preis > o2.preis)
					return 1;

				else if (o1.preis == o2.preis)
					return 0;

				else
					return -1;

			}

		};

		
		Comparator<Produkt> nameAlphabetisch = new Comparator<>() {

			@Override
			public int compare(Produkt o1, Produkt o2) {
				int erg =  o1.name.compareTo(o2.name);
				return erg * -1;
			}

		};
		Collections.sort(arr, nameAlphabetisch);
		for (Produkt p : arr)
			System.out.println(p.toString());
	}

}
