public static void main(String[] args) {
Book book1 = new Book("Head First Java", 38.9f,5);
Book book2 = new Book("Thinking in Java", 30.0f,3);
Book book3 = new Book("Effective Java", 50.0f, 8);
Book book4 = new Book("Code Complete", 42.5f, 9);
List<Book> listBooks = Arrays.asList(book1, book2, book3, book4);
System.out.println("Before sorting:");
System.out.println(listBooks);
Comparator<Book> titleComparator = new Comparator<Book>() {
public int compare(Book book1, Book book2) {
return book1.getTitle().compareTo(book2.getTitle());
}
};
Collections.sort(listBooks, titleComparator);
System.out.println("\nAfter sorting by title:");
System.out.println(listBooks);
Comparator<Book> ascOldEnough = (Book b1, Book b2) -> (int) (b1.getOldEnough() - b2.getOldEnough());
Comparator<Book> descPriceComp = (Book b1, Book b2) -> (int) (b2.getPrice() - b1.getPrice());
Collections.sort(listBooks, descPriceComp);
System.out.println("\nAfter sorting by descending price:");
System.out.println(listBooks);
Collections.sort(listBooks, ascOldEnough);
System.out.println("\nAfter sorting by descending old enough: +++");
System.out.println(listBooks);
Collections.sort(listBooks, (b1, b2) -> (int) (b1.getPrice() - b2.getPrice()));
System.out.println("\nAfter sorting by ascending price:");
System.out.println(listBooks);
}
No comments:
Post a Comment