码迷,mamicode.com
首页 > 编程语言 > 详细

Java中实现对集合中对象按中文首字母排序

时间:2019-11-26 17:52:10      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:class   collect   java   asList   list集合   ring   span   comment   slist   

有一个person对象如下:

public class Person {
    private String id;private String nam;
}

一个list集合如下:

List<Employee> personList= Arrays.asList(
            new Person("1",“张小同"),
            new Person("2",”靖大同"),
            new Person("3",”王五"),
            new Person("4",”赵三"),
            new Person("5",”刘小刀")
    );

按中文首字母排序:

public void sort(List<Person> personList){
//获取中文环境
            Comparator comparator = Collator.getInstance(Locale.CHINA);
//进行排序 Collections.sort(personList, (p1, p2)
-> { return comparator.compare(p1.getName(), p2.getName()); });
//打印结果
        personList.stream().forEach(System.out::println); 
}

注意,如果name这个字段有英文,那么将排到所有汉字前面,总体来说,优先级是:英文字母>汉字。

 

 

 

 

 

Java中实现对集合中对象按中文首字母排序

标签:class   collect   java   asList   list集合   ring   span   comment   slist   

原文地址:https://www.cnblogs.com/JohanChan/p/11937032.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!