我正在尝试使用Collections.sort
按标题按字母顺序对一组图书对象进行排序,当我运行它时,它似乎没有给我任何输出数据的方法。
public static void SortBooks(Scanner sc, ArrayList<Book> books) {
Collections.sort(books, new Comparator<Book>() {
public int compare(Book q1, Book q2) {
return q1.getBookTitle().compareToIgnoreCase(q2.getBookTitle());
}
});
}
是否有人知道如何使用System.out.println()
将此数据输出到控制台?
答案 0 :(得分:1)
为了完整性:
public static void SortBooks(Scanner sc, ArrayList<Book> books) {
Collections.sort(books, new Comparator<Book>() {
public int compare(Book q1, Book q2) {
// don't put it in here
return q1.getBookTitle().compareToIgnoreCase(q2.getBookTitle());
}
});
// put it here, after the sort
System.out.println(books);
}
当然,您可以通过迭代书籍并以某种特定方式打印每个成员来产生更好的输出。
for ( Book b : books ) {
System.out.println("Book: " + b.getBookTitle());
}
或类似。