「java如何对中文排序」java 中文排序
本篇文章给大家谈谈java如何对中文排序,以及java 中文排序对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
JAVA通过数组按首字母排序怎么做?
自己封装的一个工具类,可以将汉字按照拼音的首字母排序,支持对Model和字典排序.只能对首字母排序,不支持第二个字母, 实现的原理就是创建一个A-Z的数组,数组中的元素是字典,字典中有两个元素,一个是title,就是当前的首字母 A-Z中的一个,另一个是保存当前title对应的元素的数组,对传入的数组进行遍历获得数组中的一个元素,如果是Model或者字典通过传入的key的值获得要排序的字符串,获得字符串的拼音的首字母,判断拼音的首字母是A-Z中的哪一个,然后放到数组中的对应的字典的数组中.
后来又做了一个对英文的首字母排序的程序,原理和上面的一样,还省略了将汉字转化为拼音的步骤。工具类的名称是:NH_OrderByPinYinFirstLetter。
代码:使用的时候直接调用下面的方法就行,是一个加号方法,第一个参数是保存要排序的元素的数组,第二个参数:如果数组中是Model或者字典,就写排序的依据的key值,如果数组中不是Model或字典,就写nil。
[objc] view plain copy
// 方法
+ (NSMutableArray *)baseOrderPinYinOnArr:(NSMutableArray *)arr ByKey:(NSString *)key 返回值的类
// 返回一个有24个元素的数组,数组里的元素是字典
// 字典里有两对键值对
// title : 当前的拼音首字母 A - Z
// datas : 当前的拼音首字母对应的model所组成的数组
Java中如何实现中文排序
public class SortByChinese {
//测试
public static void main(String[] args) {
String[] a1 = {"保定","何子安","于小云","刘帝","刘何保定子安","刘","刘娜","家强","刘博"};
getSortOfChinese(a1);
for (int i = 0; i a1.length; i++) {
System.out.println(a1[i]);
}
}
/**
*
* @param a String[]
* @return String[]
*/
public static String[] getSortOfChinese(String[] a) {
// Collator 类是用来执行区分语言环境这里使用CHINA
Comparator cmp = Collator.getInstance(java.util.Locale.CHINA);
// JDKz自带对数组进行排序。
Arrays.sort(a, cmp);
return a;
}
}public class SortByChinese {
//测试
public static void main(String[] args) {
String[] a1 = {"小二","张三","李四","王五","刘七"};
getSortOfChinese(a1);
for (int i = 0; i a1.length; i++) {
System.out.println(a1[i]);
}
}
/**
*
* @param a String[]
* @return String[]
*/
public static String[] getSortOfChinese(String[] a) {
// Collator 类是用来执行区分语言环境这里使用CHINA
Comparator cmp = Collator.getInstance(java.util.Locale.CHINA);
// Arrays工具类对数组进行排序。
Arrays.sort(a, cmp);
return a;
}
}
试试对你的问题是否有用
求一个JAVA的汉字排序程序。。。
对汉字是按拼音排序的,示例:import java.util.*;
import java.text.*;public class Test{
public static void main(String args[]) {
//Comparator cmp = (RuleBasedCollator)java.text.Collator.getInstance(java.util.Locale.CHINA);//try testing various locales
Comparator cmp = java.text.Collator.getInstance(java.util.Locale.CHINA);//try testing various locales
String[] arr = {"张三", "李四", "张", "王"};
java.util.Arrays.sort(arr, cmp);
for (int i = 0; i arr.length; i++)
System.out.println(arr[i]);
Comparator cmp2 = java.text.Collator.getInstance();//try default locale
String[] arr2 = {"我", "是", "草", "吗"};
java.util.Arrays.sort(arr2, cmp2);
for (int i = 0; i arr2.length; i++)
System.out.println(arr2[i]);
}
}
Java怎么按照汉字字典顺序给字符串排序?
//按照中文第一个字母升序排列的实现
import java.text.Collator;
import java.util.Arrays;
import java.util.Comparator;
public class test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
ComparatorObject com=Collator.getInstance(java.util.Locale.CHINA);
String[] newArray={"上海","天津","广州","杭州","辽宁","南京","武汉","北京","厦门","内蒙"};
Arrays.sort(newArray,com);
for(String i:newArray){
System.out.print(i+" ");
}
}
}
java如何对中文排序的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java 中文排序、java如何对中文排序的信息别忘了在本站进行查找喔。
发布于:2022-11-24,除非注明,否则均为
原创文章,转载请注明出处。