Java实现按中文首字母排序的具体实例
要实现“按中文首字母排序”操作,可以使用java.util包下的Arrays类的sort()函数。
Arrays类包含用来操作数组(比如排序和搜索)的各种方法。
比如对于排序操作的sort()函数,重载了多种静态函数以适应不同情况下的需要。
以下,我们应用最后一个重载函数来实现“按中文首字母排序”:
sort(T[] a, Comparator<? super T> c)
根据指定比较器产生的顺序对指定对象数组进行排序。
代码举例:
package com.app.test;
import java.text.Collator;
import java.util.Arrays;
import java.util.Comparator;
/*
* java实现按中文首字母排序的方式
*/
public class TestDemo01 {
public static void main(String[] args) {
// Collator 类是用来执行区分语言环境的 String 比较的,这里选择使用CHINA
Comparator comparator = Collator.getInstance(java.util.Locale.CHINA);
String[] arrStrings = { "乔峰", "郭靖", "杨过", "张无忌","韦小宝" };
// 使根据指定比较器产生的顺序对指定对象数组进行排序。
Arrays.sort(arrStrings, comparator);
for (int i = 0; i < arrStrings.length; i++)
System.out.println(arrStrings[i]);
}
}
执行结果:
01.郭靖
02.乔峰
03.韦小宝
04.杨过
05.张无忌
至此,我们即完成了“按中文首字母排序”操作。
PS:这里再为大家推荐一款本站的相关在线工具供大家参考:
在线中英文根据首字母排序工具:
http://tools.jb51.net/aideddesign/zh_paixu
相关推荐
-
java如何对map进行排序详解(map集合的使用)
今天做统计时需要对X轴的地区按照地区代码(areaCode)进行排序,由于在构建XMLData使用的map来进行数据统计的,所以在统计过程中就需要对map进行排序. 一.简单介绍Map 在讲解Map排序之前,我们先来稍微了解下map.map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等.其中这四者的区别如下(简单介绍): HashMap:我们最常用的Map,它根据key的HashCode 值来存储数据,根据key可以直接
-
Java中对list元素进行排序的方法详解
在Java Collection Framework中定义的List实现有Vector,ArrayList和LinkedList.这些集合提供了对对象组的索引访问.他们提供了元素的添加与删除支持.然而,它们并没有内置的元素排序支持. 你能够使用java.util.Collections类中的sort()方法对List元素进行排序.你既可以给方法传递一个List对象,也可以传递一个List和一个Comparator.如果列表中的元素全都是相同类型的类,并且这个类实现了Comparable接口,你可
-
Java 快速排序(QuickSort)原理及实现代码
快速排序(QuickSort )是常用到的效率比较高的一种排序算法,在面试过程中也经常提及.下面就详细讲解一下他的原理.给出一个Java版本的实现. 快速排序思想: 通过对数据元素集合Rn 进行一趟排序划分出独立的两个部分.其中一个部分的关键字比另一部分的关键字小.然后再分别对两个部分的关键字进行一趟排序,直到独立的元素只有一个,此时整个元素集合有序. 快速排序的过程--挖坑填数法(这是一个很形象的名称),对一个元素集合R[ low ... high ] ,首先取一个数(一般是R[low] )做
-
java数组排序示例(冒泡排序、快速排序、希尔排序、选择排序)
快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现. 冒泡法是运用遍历数组进行比较,通过不断的比较将最小值或者最大值一个一个的遍历出来. 选择排序法是将数组的第一个数据作为最大或者最小的值,然后通过比较循环,输出有序的数组. 插入排序是选择一个数组中的数据,通过不断的插入比较最后进行排序. 复制代码 代码如下: package com.firewolf.sort; public class MySort { /** * @param args */ public s
-
Java TreeSet实现学生按年龄大小和姓名排序的方法示例
本文实例讲述了Java TreeSet实现学生按年龄大小和姓名排序的方法.分享给大家供大家参考,具体如下: import java.util.*; class Treeset { public static void main(String[] args) { TreeSet t = new TreeSet(); t.add(new student("a1",15)); t.add(new student("a2",15)); t.add(new student(&
-
TreeSet详解和使用示例_动力节点Java学院整理
第1部分 TreeSet介绍 TreeSet简介 TreeSet 是一个有序的集合,它的作用是提供有序的Set集合.它继承于AbstractSet抽象类,实现了NavigableSet<E>, Cloneable, java.io.Serializable接口. TreeSet 继承于AbstractSet,所以它是一个Set集合,具有Set的属性和方法. TreeSet 实现了NavigableSet接口,意味着它支持一系列的导航方法.比如查找与指定目标最匹配项. TreeSet 实现了Cl
-
十种JAVA排序算法实例
排序算法有很多,所以在特定情景中使用哪一种算法很重要.为了选择合适的算法,可以按照建议的顺序考虑以下标准: (1)执行时间 (2)存储空间 (3)编程工作 对于数据量较小的情形,(1)(2)差别不大,主要考虑(3):而对于数据量大的,(1)为首要. 一.冒泡(Bubble)排序 复制代码 代码如下: void BubbleSortArray() { for(int i=1;i<n;i++) { for(int j=0;i<n-i;j++)
-
java 中HashMap、HashSet、TreeMap、TreeSet判断元素相同的几种方法比较
java 中HashMap.HashSet.TreeMap.TreeSet判断元素相同的几种方法比较 1.1 HashMap 先来看一下HashMap里面是怎么存放元素的.Map里面存放的每一个元素都是key-value这样的键值对,而且都是通过put方法进行添加的,而且相同的key在Map中只会有一个与之关联的value存在.put方法在Map中的定义如下. V put(K key, V value); 它用来存放key-value这样的一个键值对,返回值是key在Map中存放的旧va
-
详解Java中HashSet和TreeSet的区别
详解Java中HashSet和TreeSet的区别 1. HashSet HashSet有以下特点: 不能保证元素的排列顺序,顺序有可能发生变化 不是同步的 集合元素可以是null,但只能放入一个null 当向HashSet集合中存入一个元素时,HashSet会调用该对象的hashCode()方法来得到该对象的hashCode值,然后根据 hashCode值来决定该对象在HashSet中存储位置. 简单的说,HashSet集合判断两个元素相等的标准是两个对象通过equals方法比较相等,并且两个
-
浅谈java中的TreeMap 排序与TreeSet 排序
TreeMap: package com; import java.util.Comparator; import java.util.TreeMap; public class Test5 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub TreeMap<String, String> tree = new TreeMap<String,
-
深入Java冒泡排序与选择排序的区别详解
冒泡排序它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成.代码如下: 复制代码 代码如下: public class nums { public static void main(String[] args){ int []nums = {5,4,3,2,1}; for(int i = 0; i < nums.length; i++){
-
java的arraylist排序示例(arraylist用法)
写了一个java数组排序示例,这里分享给大家共同学习 复制代码 代码如下: package com.yonyou.test;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;public class Test { public static void main(String[] args) { Student zlj = new St
随机推荐
- AJAX跨域请求json数据的实现方法
- 详解如何在NodeJS项目中优雅的使用ES6
- 基于JS实现移动端左滑删除功能
- Java 跳出递归循环问题解决办法
- 一步步打造简单的MVC电商网站BooksStore(4)
- Javascript实现滑块滑动改变值的实现代码
- Web层改进II-用xmlhttp 无声息提交复杂表单
- ThinkPHP实例化模型的四种方法概述
- C#中循环语句:while、for、foreach的使用
- C#事件用法实例浅析
- Android开发之自带下载器DownloadManager的使用示例代码
- CSS重新定义项目符号和编号技巧
- McAfee 1920错误 启动失败的解决办法
- jquery 图片上传按比例预览插件集合
- python查找第k小元素代码分享
- jQuery实现定位滚动条位置
- JQuery Tips(2) 关于$()包装集你不知道的
- 概述Java的struts2框架
- php类自动装载、链式操作、魔术方法实现代码
- 解决WIN7中易语言的显示问题