java 中文数字排序方法
2012-07-25 15:18
429 查看
直接上代码:
首先做个比较器
public Comparator<File> compareByName;
然后就是比较的主要方法
compareByName = new Comparator<File>() {
public int compare(String arg0, String arg1) {
arg1=arg1.replaceAll("-","");//过滤掉文件里的这个符号
arg0=arg0.replaceAll("-","");
arg1 = arg1.replaceAll("一", "11");//这个是让中文数字变成可比较的值
arg0 = arg0.replaceAll("一", "11"));
arg0 = arg0.replaceAll("二", "22");
arg0 = arg0.replaceAll("三", "33");
arg0 = arg0.replaceAll("四", "44");
arg0 = arg0.replaceAll("五", "55");
arg0 = arg0.replaceAll("六", "66");
arg0 = arg0.replaceAll("七", "77");
arg0 = arg0.replaceAll("八", "88");
arg0 = arg0.replaceAll("九", "99");
arg1 = arg1.replace("一", "11");
arg1 = arg1.replaceAll("二", "22");
arg1 = arg1.replaceAll("三", "33");
arg1 = arg1.replaceAll("四", "44");
arg1 = arg1.replaceAll("五", "55");
arg1 = arg1.replaceAll("六", "66");
arg1 = arg1.replaceAll("七", "77");
arg1 = arg1.replaceAll("八", "88");
arg1 = arg1.replaceAll("九", "99");
if (arg0.compareTo(arg1) > 0) {
return 1;
} else if (arg0.compareTo(arg1) < 0) {
return -1;
} else {
return 0;
}
}
public int compare(File arg0, File arg1) {
//将FILE文件 变成STRING再去比较
return compare(arg0.getName(), arg1.getName());
// TODO Auto-generated method stub
}
};
最后 Collections.sort(文件集合LIST, compareByName);
LIST就是已经排序序的了
首先做个比较器
public Comparator<File> compareByName;
然后就是比较的主要方法
compareByName = new Comparator<File>() {
public int compare(String arg0, String arg1) {
arg1=arg1.replaceAll("-","");//过滤掉文件里的这个符号
arg0=arg0.replaceAll("-","");
arg1 = arg1.replaceAll("一", "11");//这个是让中文数字变成可比较的值
arg0 = arg0.replaceAll("一", "11"));
arg0 = arg0.replaceAll("二", "22");
arg0 = arg0.replaceAll("三", "33");
arg0 = arg0.replaceAll("四", "44");
arg0 = arg0.replaceAll("五", "55");
arg0 = arg0.replaceAll("六", "66");
arg0 = arg0.replaceAll("七", "77");
arg0 = arg0.replaceAll("八", "88");
arg0 = arg0.replaceAll("九", "99");
arg1 = arg1.replace("一", "11");
arg1 = arg1.replaceAll("二", "22");
arg1 = arg1.replaceAll("三", "33");
arg1 = arg1.replaceAll("四", "44");
arg1 = arg1.replaceAll("五", "55");
arg1 = arg1.replaceAll("六", "66");
arg1 = arg1.replaceAll("七", "77");
arg1 = arg1.replaceAll("八", "88");
arg1 = arg1.replaceAll("九", "99");
if (arg0.compareTo(arg1) > 0) {
return 1;
} else if (arg0.compareTo(arg1) < 0) {
return -1;
} else {
return 0;
}
}
public int compare(File arg0, File arg1) {
//将FILE文件 变成STRING再去比较
return compare(arg0.getName(), arg1.getName());
// TODO Auto-generated method stub
}
};
最后 Collections.sort(文件集合LIST, compareByName);
LIST就是已经排序序的了
相关文章推荐
- Java中文排序方法总结
- 输入数字并采用多种排序方法(java)
- javascript 自己实现数字\字母和中文的混合排序方法 by FungLeo
- Oracle中中文、数字,英文混杂形式的字段进行排序的方法
- 数字、中文 排序方法
- java中调用Js的方法 & java.net.Url的使用 & Url中文乱码的解决 & Map 排序
- Java字符串排序中文+数字
- javascript 自己实现数字\字母和中文的混合排序方法 by FungLeo
- Java 冒泡排序、插入排序等六种排序方法、Java中文排序、Java字符串排序
- Oracle中中文、数字,英文混杂形式的字段进行排序的方法
- java获取键盘输入的数字,并进行排序的方法
- JS排序:localeCompare() 方法实现中文排序、sort方法实现数字英文混合排序
- 基于JS实现数字+字母+中文的混合排序方法
- Java中使用Collections.sort()方法对数字和字符串泛型的LIst进行排序
- java 编程思想中的PriorityBlockingQueue 部分里对PrioritizedTask的排序没有显式调用collection的sort方法。而是通过take时做的这个动作
- Java有哪几种常用的排序方法
- JAVA集合按照中文排序
- java 输入一个数字,反转输出这个数字的值(实现方法)
- 【Java】实现按中文首字母排序
- Java实现按中文首字母排序的具体实例