【问题标题】:How to sort array of objects in Java by alphabet [closed]如何按字母表对Java中的对象数组进行排序[关闭]
【发布时间】:2021-07-30 12:21:03
【问题描述】:

我有类库

public class Books extends Library {
  String regNumber
  String author;
  String name;
  int yearOfPublishing;
  String publishingHouse;
  int numberOfPages;

  public Books(String regNumber, String author, String name, int yearOfPublishing,
      String publishingHouse, int numberOfPages) {
    this.regNumber = regNumber;
    this.author = author;
    this.name = name;
    this.yearOfPublishing = yearOfPublishing;
    this.publishingHouse = publishingHouse;
    this.numberOfPages = numberOfPages;
  }

如何按字母顺序列出作者姓氏的书籍?

【问题讨论】:

    标签: java arrays sorting object alphabetical


    【解决方案1】:

    首先,您应该有一个Book class 用于个别书籍。假设您的图书馆是一个书籍列表,您可以这样做。

    List<Book> sortedLibrary = library.stream()
                    .sorted(Comparator.comparing(book -> book.author))
                    .collect(Collectors.toList());
    

    由于没有提供有关 author 姓名字段的详细信息,它会按整个字段排序,无论是名字、姓氏还是两个名字。

    如果您想对它们进行适当的排序,那么一种更简洁的方法会是。

    library.sort(Comparator.comparing(book->book.author));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-15
      • 2013-10-28
      • 2014-09-25
      • 2014-12-30
      • 1970-01-01
      • 2014-02-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多