首页  >  文章  >  Java  >  如何在 Java 中按名称对对象数组进行排序?

如何在 Java 中按名称对对象数组进行排序?

Barbara Streisand
Barbara Streisand原创
2024-11-25 12:17:12679浏览

How to Sort an Array of Objects by Name in Java?

在 Java 中对对象数组进行排序

问题:

你有一个对象数组不包含字符串但包含对象引用。每个对象引用通过 toString 方法提供有关名称、ID、作者和发布者的信息。任务是按名称字段对该数组进行排序。但是,您不确定如何从每个对象中提取名称并将其用作排序标准。

解决方案:

从每个对象中提取名称并排序通过该字段,您可以使用以下方法:

List<Book> books = new ArrayList<Book>();

Collections.sort(books, new Comparator<Book>() {
  @Override
  public int compare(Book o1, Book o2) {
    return o1.getName().compareTo(o2.getName());
  }
});

在此例如:

  • 列表是一个表示对象数组的列表。
  • Collections.sort 用于对列表进行排序。
  • new Comparator() {...} 定义一个自定义比较器来确定排序顺序。
  • o1.getName() 使用 getter 方法从第一个对象中提取名称字段,如果字段是,则直接访问public.
  • o2.getName() 从第二个对象中提取名称字段。
  • compareTo 比较提取的名称,如果第一个名称较小则返回负值,如果第一个名称较小则返回正值较大,如果相等则为零。

以上是如何在 Java 中按名称对对象数组进行排序?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn