千家信息网

Java如何使用Collections.sort对中文进行排序方式

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,本篇文章为大家展示了Java如何使用Collections.sort对中文进行排序方式,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。使用Collections
千家信息网最后更新 2025年01月19日Java如何使用Collections.sort对中文进行排序方式

本篇文章为大家展示了Java如何使用Collections.sort对中文进行排序方式,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

使用Collections.sort对中文进行排序

使用collections.sort(List list, Comparator )对中文名字进行排序

调用Collator的静态方法getInstance来获取所需语言环境

核心代码:

下面展示 核心代码。

result= Collator.getInstance(Locale.CHINA).compare(o1.getName(), o2.getName());

全部代码,里面有对数字的排序方法,

       public class Demo03Sort {    public static void main(String[] args) {        ArrayList list01 = new ArrayList<>();        list01.add(1);        list01.add(4);        list01.add(3);        System.out.println(list01);//[1, 4, 3]        Collections.sort(list01, new Comparator() {            //重写比较的规则            @Override            public int compare(Integer o1, Integer o2) {                //return o2 - o1;//降序排序                return o1 - o2;//升序排序            }        });        System.out.println(list01);//[1, 3, 4]        ArrayList list02 = new ArrayList<>();       list02.add(new Student("萧炎",22));       list02.add(new Student("萧薰",20));       list02.add(new Student("萧玉",24));        list02.add(new Student("阿玉",22));        System.out.println(list02);        //[Student{name='萧炎', age=22}, Student{name='萧薰', age=20}, Student{name='萧玉', age=24}]        Collections.sort(list02, new Comparator() {            @Override            public int compare(Student o1, Student o2) {                //按照年龄升序排序                int result = o1.getAge() - o2.getAge();                //如果两人的年龄相同,在使用姓名的第一个字比较                if(result == 0 ){                    //result = o1.getName().charAt(0) - o2.getName().charAt(0);                    //按照中文名称排序                    result= Collator.getInstance(Locale.CHINA).compare(o1.getName(), o2.getName());                }                return result;            }        });        System.out.println(list02);        //未按照中文排序的结果:[Student{name='萧薰', age=20}, Student{name='萧炎', age=22}, Student{name='阿玉', age=22}, Student{name='萧玉', age=24}]       //按照中文排序的结果:[Student{name='萧薰', age=20}, Student{name='阿玉', age=22}, Student{name='萧炎', age=22}, Student{name='萧玉', age=24}]    }}

Collections.sort 排序 注解

逆序:

上述内容就是Java如何使用Collections.sort对中文进行排序方式,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

0