java - 如何按属性的字母顺序对对象的 ArrayList 进行排序
问题描述
我有一个 ArrayList of People,每个人都有自己的名字或年龄。所以,我将向这个 ArrayList 添加新的人,我想按字母顺序对其进行排序。例如:
ArrayList<Person> list = new ArrayList<Person>();
list.add(new Person("Matt", 23));
list.add(new Person("John", 34));
如果打印列表的名称,我当然会首先收到约翰,因为那是我添加的第一个人,那么我该如何对其进行排序,以便约翰可以按字母顺序排列第一个?
提前致谢!
解决方案
您可以实现一个Comparator<Person>
接口或 Person 类应该实现Comparable
接口。在compareTo
orcompare
方法中,您可以根据您的要求实现比较逻辑以根据属性名称进行排序。
推荐阅读
- python - 如何将 unicode 打印到终端和文件重定向
- angular - 角垫选择表单控件
- calendar - Framework7日历仅在刷新html后打开
- database - Codeigniter 最佳实践:使用帮助器管理数据库的常用功能有意义吗?
- tfs - 如何在 tfs 发布仪表板中更改发布名称格式?
- ruby-on-rails - 确保关联列是唯一的
- php - WordPress 工具集禁用分类输入列表不起作用
- python - 将加载的图像复制到测试、训练和验证文件夹
- graph - 在 JanusGraph 中删除节点后,节点边会发生什么?
- atom-editor - Prettier - Atom 编辑器用双引号替换单引号