有一个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中实现对集合中对象按中文首字母排序的更多相关文章

  1. java实现按中文首字母排序的方式

    public class ABD { public static void main(String[] args) { //Collator类是用来执行区分语言环境的String比较的,这里是选择CH ...

  2. 关于java中实现在oracle数据库中实现对中文首字母进行排序的解决方案

    首先介绍Oracle 9i新增加的一个系统自带的排序函数 1.按首字母排序 在oracle9i中新增了按照拼音.部首.笔画排序功能.设置NLS_SORT值     SCHINESE_RADICAL_M ...

  3. 获取手机通讯录放入PinnedSectionListView中,按名字首字母排序,并且实现拨打电话功能。

    package com.lixu.tongxunlu; import java.util.ArrayList; import com.lixu.tongxunlu.PinnedSectionListV ...

  4. mysql、oracle 中按照拼音首字母排序

    mysql中按照拼音首字母排序 convert(name using gbk) ASC 注:name 为字段名称 oracle中按照拼音首字母排序 nlssort(enterprise_name,'N ...

  5. 三道习题(1、将单词表中由相同字母组成的单词归成一类,每类单词按照单词的首字母排序,并按 #每类中第一个单词字典序由大到小排列输出各个类别。 #输入格式:按字典序由小到大输入若干个单词,每个单词占一行,以end结束输入。)

    #coding=gbk ''' 1.将单词表中由相同字母组成的单词归成一类,每类单词按照单词的首字母排序,并按 #每类中第一个单词字典序由大到小排列输出各个类别. #输入格式:按字典序由小到大输入若干 ...

  6. 一起写框架-Ioc内核容器的实现-基础功能-容器对象名默认首字母小写(八)

    实现功能 --前面实现的代码-- 默认的对象名就类名.不符合Java的命名规范.我们希望默认的对象名首字母小写. 实现思路 创建一个命名规则的帮助类.实现将对大写开头的对象名修改为小写开头. 实现步骤 ...

  7. Java获取中文拼音、中文首字母缩写和中文首字母

    获取中文拼音(如:广东省 -->guangdongsheng) /** * 得到中文全拼 * @param src 需要转化的中文字符串 * @return */ public static S ...

  8. java:替换List集合中的某个任意值(对象)

    定义replaceAll方法,将传入的新值替换集合中的老值(list,old,new) private static <E> void replaceAll(List<E> l ...

  9. java如何对List集合中的元素进行排序(请收藏)

    在java开发中有时候我们需要对List集合中的元素按照一定的规则进行排序,比如说有个Person的集合,我们要根据Person的age属性进行排序输出,这就需要用到Java中提供的对集合进行操作的工 ...

随机推荐

  1. JAVA OOP 编程-常用设计模式

    smart-design-pattern 吼吼!10分钟内快速回顾所有设计模式及应用场景 其实,工作三年以上,精通coding,深知并发编程,熟悉OOP思想,但却因为种种原因! 没有在学习生涯初期就看 ...

  2. IntelliJ IDEA 2019.3.4永久破解(持续更新)--已更新

    第一步,下载最新破解包: 链接: https://pan.baidu.com/s/1djUF9TiNZC4rIfxczxfIew 提取码: f521 把破解包两个文件放进bin目录下,这一步极为重要! ...

  3. 用大白话讲Java动态代理的原理

    动态代理是什么 首先说下代理模式,代理模式是常见的一种java设计模式,特征是代理类与委托类实现了同样的接口,代理类主要负责为委托类预处理.过滤.转发,以及事后处理等.代理类与委托类之间通常会存在关联 ...

  4. Django学习路12_objects 方法(all,filter,exclude,order by,values)

    Person.objects.all() 获取全部数据 def get_persons(request): persons = Person.objects.all() # 获取全部数据 contex ...

  5. 预定义的 $_GET 变量用于收集来自 method="get" 的表单中的值

    PHP $_GET 变量 在 PHP 中,预定义的 $_GET 变量用于收集来自 method="get" 的表单中的值. $_GET 变量 预定义的 $_GET 变量用于收集来自 ...

  6. 解决痛苦的方法/cy

    这篇文章 源于我所有痛苦的回忆. 由于痛苦太多了 体会完了 所以 觉得这些都不算是什么大问题了 所以 这里 是解决痛苦的方法. 真的很痛苦的话 可以这样 对着全班人喊你们 都没我强 因为 你们都没有我 ...

  7. VMware 虚拟机开机黑屏解决方法

    # 调整VMware硬盘启动优先级 第一步:打开电源时进入固件,也就是BIOS 设置界面. 第二步:找到Main-最下面的Boot-time Diagnostic Screen,敲“Enter”,弹出 ...

  8. LVS-NAT:搭建HTTP及HTTPS负载均衡集群

    目录 LVS-NAT:搭建HTTP及HTTPS负载均衡集群 环境说明: 搭建NAT模式的HTTP负载集群 1. 配置好IP地址信息 2. DR上开启IP转发 3.DR上配置lvs-nat的转发机制 4 ...

  9. [转]Tomcat 调优的技巧

    原文地址:https://mp.weixin.qq.com/s/7_bz3OPoH3x7xkkwkhJhbw Tomcat调优这块,在面试中会经常问道.目前Tomcat调优主要分为2大类,当前解释用的 ...

  10. 基于asp.net core 从零搭建自己的业务框架(二)

    前言 对于项目的迭代,如何降低复杂性的要求高于性能以及技术细节的 一个易用的项目,才能迭代到比拼性能,最后拼刺刀的阶段 传统单体项目,都是传统三层,直接请求响应的模式,这类称为Rpc模式,易用性上非常 ...