package pracaDomowa3; import java.util.Objects; public class Book implements Comparable { private String title; private String author; private int pages; public Book(String title, String author, int pages){ this.title = title; this.author = author; this.pages = pages; } @Override public int hashCode() { int hash = 7; hash = 31 * hash + Objects.hashCode(this.title); hash = 31 * hash + Objects.hashCode(this.author); hash = 31 * hash + this.pages; return hash; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } final Book other = (Book) obj; if (this.pages != other.pages) { return false; } if (!Objects.equals(this.title, other.title)) { return false; } if (!Objects.equals(this.author, other.author)) { return false; } return true; } @Override public String toString() { return "Book{" + "title=" + title + ", author=" + author + ", pages=" + pages + '}'; } @Override public int compareTo(Book o){ int compareTitle = title.compareTo(o.title); if (compareTitle == 0){ return author.compareTo(o.author); } else{ return compareTitle; } } } ------------------------------------------------------------------------------------ package pracaDomowa3; import java.util.ArrayList; import java.util.Collections; import java.util.List; public class Start { public static void main(String[] args) { List books = new ArrayList<>(); books.add(new Book("Podstawy języka Java","A",100)); books.add(new Book("Java dla opornych","B",100)); books.add(new Book("Podstawy języka Java","C",150)); books.add(new Book("C# dla początkujących","B",200)); books.add(new Book("W pustyni i w puszczy","Henryk Sienkiewicz",350)); for(Book book : books){ System.out.println(book); } Collections.sort(books); System.out.println("\nPosortowane: "); for (Book book : books){ System.out.println(books); } CompareBook.compare(books); for (Book book : books){ System.out.println(books); } } } --------------------------------------------------------------------------------------- package pracaDomowa3; import java.util.Comparator; import java.util.List; public class CompareBook implements Comparator { @Override public int compare(Book o1, Book o2) { int a = pages(o2) - pages(o1); if (a == 0){ author(o1) - author(o2); } else{ return a; } } }