Java编程实现汉字按字母顺序排序的方法示例

本文实例讲述了Java编程实现汉字按字母顺序排序的方法。分享给大家供大家参考,具体如下:

String[] str0 = new String[]{"abd","ervcd","sdfc","abdc","sded","生活","文教","政治"};
String[] str1 = new String[]{"生活","文教","政治","自然","宗教"};
String[] str2 = new String[]{"张三","李四","王五","自然","戴阿","戴生"};
String[] str3 = new String[]{"李四","张三","繁體字","無效","對繁","軍事","經貿"};
//对简体字有效,对繁体字无效
Comparator comp = Collator.getInstance(java.util.Locale.CHINESE);
Arrays.sort(str0, comp);
Arrays.sort(str1, comp);
Arrays.sort(str2, comp);
Arrays.sort(str3, comp);
for(int i=0;i<str0.length;i++){
  System.err.print(str0[i]+" ");
}
System.err.println();
for(int i=0;i<str1.length;i++){
  System.err.print(str1[i]+" ");
}
System.err.println();
for(int i=0;i<str2.length;i++){
  System.err.print(str2[i]+" ");
}
System.err.println();
for(int i=0;i<str3.length;i++){
  System.err.print(str3[i]+" ");
}

输出:

abd abdc ervcd sded sdfc 生活 文教 政治
生活 文教 政治 自然 宗教
戴阿 戴生 李四 王五 张三 自然
繁體字 李四 张三 對繁 無效 經貿 軍事

PS:这里再为大家推荐一款功能类似的在线工具供大家参考使用:

在线中英文根据首字母排序工具:
http://tools.jb51.net/aideddesign/zh_paixu

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。

(0)

相关推荐

  • java中常用的排序方法

    复制代码 代码如下: package com.test; import java.util.Random; /** * 排序测试类 *  * 排序算法的分类如下: 1.插入排序(直接插入排序.折半插入排序.希尔排序): 2.交换排序(冒泡泡排序.快速排序): * 3.选择排序(直接选择排序.堆排序): 4.归并排序: 5.基数排序. *  * 关于排序方法的选择: (1)若n较小(如n≤50),可采用直接插入或直接选择排序. * 当记录规模较小时,直接插入排序较好:否则因为直接选择移动的记录数少

  • JAVA简单选择排序算法原理及实现

    简单选择排序:(选出最小值,放在第一位,然后第一位向后推移,如此循环)第一位与后面每一个逐个比较,每次都使最小的置顶,第一位向后推进(即刚选定的第一位是最小值,不再参与比较,比较次数减1) 复杂度: 所需进行记录移动的操作次数较少 0--3(n-1) ,无论记录的初始排列如何,所需的关键字间的比较次数相同,均为n(n-1)/2,总的时间复杂度为O(n2):空间复杂度 O(1) 算法改进:每次对比,都是为了将最小的值放到第一位,所以可以一比到底,找出最小值,直接放到第一位,省去无意义的调换移动操作

  • Java 快速排序(QuickSort)原理及实现代码

    快速排序(QuickSort )是常用到的效率比较高的一种排序算法,在面试过程中也经常提及.下面就详细讲解一下他的原理.给出一个Java版本的实现. 快速排序思想: 通过对数据元素集合Rn 进行一趟排序划分出独立的两个部分.其中一个部分的关键字比另一部分的关键字小.然后再分别对两个部分的关键字进行一趟排序,直到独立的元素只有一个,此时整个元素集合有序. 快速排序的过程--挖坑填数法(这是一个很形象的名称),对一个元素集合R[ low ... high ] ,首先取一个数(一般是R[low] )做

  • java中实现汉字按照拼音排序(示例代码)

    最近項目中需要對繁體字按拼音進行排序 复制代码 代码如下: public static void main(String[] args) { Comparator cmp = Collator.getInstance(java.util.Locale.CHINA); String[] arr = { "张三", "李四", "王五", "刘六" ,"周濤","戴笠","戴阿&q

  • java如何对map进行排序详解(map集合的使用)

    今天做统计时需要对X轴的地区按照地区代码(areaCode)进行排序,由于在构建XMLData使用的map来进行数据统计的,所以在统计过程中就需要对map进行排序. 一.简单介绍Map 在讲解Map排序之前,我们先来稍微了解下map.map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等.其中这四者的区别如下(简单介绍): HashMap:我们最常用的Map,它根据key的HashCode 值来存储数据,根据key可以直接

  • Java实现按中文首字母排序的具体实例

    要实现"按中文首字母排序"操作,可以使用java.util包下的Arrays类的sort()函数. Arrays类包含用来操作数组(比如排序和搜索)的各种方法. 比如对于排序操作的sort()函数,重载了多种静态函数以适应不同情况下的需要. 以下,我们应用最后一个重载函数来实现"按中文首字母排序": 复制代码 代码如下: sort(T[] a, Comparator<? super T> c) 根据指定比较器产生的顺序对指定对象数组进行排序. 代码举例:

  • java直接插入排序示例

    影响排序效率的一般从3个方面比较:数据比较的次数,数据移动的次数,内存空间占用的大小.我们就冒泡排序.选择排序.插入排序.快速排序做一个总的比较.一般情况下不会使用冒泡排序算法,因为它的比较次数和移动次数在几种排序算法中都是最多的,它的唯一好处是算法简单,易于理解,所以在数据量很小的时候它会有些应用价值.选择排序在比较次数上和冒泡排序一样,都是n的平方,但它把交换的次数降低到了最低,所以在数据量很小且交换数据相对于比较数据更加耗时的情况下,可以应用选择排序.在大多数情况下,当数据量比较小或基本上

  • Java实现对中文字符串的排序功能实例代码

    废话不多说了,直接给大家代码分享代码了. 具体代码如下所示: package test; /** * * @Title 书的信息类 * @author LR * @version . * @since -- */ public class Book { private String book_id; private String book_name; private String publishing_house; public Book(String book_id, String book_

  • Java编程实现中英混合字符串数组按首字母排序的方法

    本文实例讲述了Java编程实现中英混合字符串数组按首字母排序的方法.分享给大家供大家参考,具体如下: 在Java中对于字符串数组的排序,我们可以使用Arrays.sort(String[])方法很便捷的进行排序.例如: String[] arrays = new String[] { "gyu", "sdf", "zf", "大同", "收到", "地方", "三等分"

  • java数组排序示例(冒泡排序、快速排序、希尔排序、选择排序)

    快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现. 冒泡法是运用遍历数组进行比较,通过不断的比较将最小值或者最大值一个一个的遍历出来. 选择排序法是将数组的第一个数据作为最大或者最小的值,然后通过比较循环,输出有序的数组. 插入排序是选择一个数组中的数据,通过不断的插入比较最后进行排序. 复制代码 代码如下: package com.firewolf.sort; public class MySort { /**  * @param args  */ public s

  • Java中的数组排序方式(快速排序、冒泡排序、选择排序)

    1.使用JavaApi文档中的Arrays类中的sort()进行快速排序 复制代码 代码如下: import java.util.Arrays; public class TestOne{ public static void main(String [] args){ int [] array={2,0,1,4,5,8}; Arrays.sort(array);//调用Arrays的静态方法Sort进行排序,升序排列 for(int show:array){ System.out.printl

  • 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

随机推荐