【问题标题】:Sort Array of objects in Java [duplicate]Java中的对象数组排序[重复]
【发布时间】:2017-02-25 04:46:29
【问题描述】:

目前我正在处理一个联系人管理器项目,其中我有一个contactMgr 类,以及一个在contactMgr 类中存储联系人信息的联系人类。

为了启动程序,我创建了一个包含 20 个索引的 contactMgr 数组。然后,当我创建一个包含姓名、电子邮件和电话号码的联系人时,我将其存储在 contactMgr 数组中。联系人对象的所有字段都存储为字符串。

如何按名称的字母顺序对contactMgr数组中的联系人对象进行排序?

【问题讨论】:

标签: java arrays class


【解决方案1】:

您可以为此使用Arrays.sort(T[], Comparator<T>)

ContactMgr[] contacts = ...;
Arrays.sort(contacts, (ContactMgr left, ContactMgr right)
    -> left.getName().compareTo(right.getName())
);

或者如果 ContactMgr 已经实现了Comparable 接口并且它可以用来比较名称,您可以使用默认比较器调用Arrays.sort(contact)

【讨论】:

  • 所以我尝试使用 Contact 类实现 Comparable 接口,但它不允许我将 Contact 作为参数传递给 Arrays.sort。
猜你喜欢
  • 2020-08-23
  • 2016-10-30
  • 2021-03-11
  • 2014-08-04
  • 2023-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多