Java拼音排序,汉字排序会存在问题的。
示例如下:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.xiva.baseKnowledge;
import java.text.Collator;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
/**
*
* @author Xiva
*/
public class SortByPinY {
public enum Color {
RED, BLUE, GREEN, BLACK;
}
public static void main(String[] args) throws ParseException{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Collator cmp = Collator.getInstance(java.util.Locale.CHINA);
String[] arr = { "孙子兵法", "网站", "奇迹", "糖水", "参数", "香飘飘", "隐士", "障碍", "颐和园", "怡人"};
Arrays.sort(arr, cmp);
System.out.println(Arrays.toString(arr));
Date date = new Date();
String dateStr = date.toString();
System.out.println(dateStr);
String sdfDate = sdf.format(date);
System.out.println(sdfDate);
Date conDate = sdf2.parse(sdfDate);
System.out.println(conDate.toString());
List<Color> list = new ArrayList<Color>();
list.add(Color.RED);
list.add(Color.BLACK);
list.add(Color.GREEN);
list.add(Color.BLUE);
String arrayStr = ArraystoString(list.toArray());
System.out.println(arrayStr);
String[] array = arrayStr.split(",");
for(int i=0;i<array.length;i++){
}
System.out.println(array.length);
}
public static String ArraystoString(Object[] a) {
if (a == null)
return "null";
int iMax = a.length - 1;
if (iMax == -1)
return "";
StringBuilder b = new StringBuilder();
//b.append('[');
for (int i = 0; ; i++) {
b.append(String.valueOf(a[i]));
if (i == iMax)
//.append(']')
return b.toString();
b.append(", ");
}
}
}
其中输出结果为:
[参数, 奇迹, 孙子兵法, 糖水, 网站, 香飘飘, 颐和园, 隐士, 障碍, 怡人]
怡人明显应该在障碍前面才对。
分享到:
相关推荐
"Java集合某个字段按照中文拼音排序" Java集合某个字段按照中文拼音排序是Java开发中经常遇到的问题。对Java集合中的某个字段按照中文拼音排序可以使用多种方法,本文将介绍两种常见的方法。 方法一:使用...
Java拼音搜索是一个在Java开发中常见的功能,尤其在构建搜索引擎或者中文输入法时,将汉字转化为拼音以便于处理和...开发者可以在这个基础上进一步扩展,如增加拼音排序、语音输入支持等功能,以满足不同场景下的需求。
// 汉字按拼音排序 if (pinyin1 == null || pinyin2 == null) { return o1.compareTo(o2); } return Arrays.stream(pinyin1).sorted().toString().compareTo(Arrays.stream(pinyin2).sorted().toString()); } ...
"Android中文按拼音排序"这个话题就是关于如何实现这样的功能。这篇博客(博文链接:https://gqdy365.iteye.com/blog/2002488)可能提供了详细的实现方法。 首先,我们要理解的是,中文字符本身并不直接携带拼音...
本示例"按拼音排序分组LIST"着重于展示如何在Android应用中实现一个列表(List),该列表中的元素按照汉字的拼音首字母从A到Z进行排序,并且用户可以点击每个字母来筛选显示相应首字母的数据。这个功能在很多应用...
这里我们将详细介绍如何使用`pinyin4j`这个Java库来实现中文字符串的拼音排序。 `pinyin4j`是一个强大的Java库,它提供了将汉字转换为拼音的功能,这使得我们可以基于每个汉字的拼音首字母来进行排序。以下是如何...
中文拼音排序是一种解决方案,它将汉字转换为对应的拼音,然后按照拼音的顺序进行排序。这个“中文拼音排序”项目利用了`pinyin4j`库来实现这一功能。 `pinyin4j`是一个强大的Java库,专门用于处理中文字符的拼音...
4. * 汉字按照拼音排序的比较器 5. * @author KennyLee 2009-2-23 10:08:59 6. * 7. */ 8.public class PinyinComparator implements Comparator<Object> { 9. public int compare(Object o1, Object o2) { 10...
"java拼音解析.zip"这个压缩包提供的核心是`pinyin4j-2.5.0.jar`库,它是一个强大的Java库,专门用于汉字到拼音的转换。以下是对这个库及其应用的详细解释。 `pinyin4j`是由Barry DeZeng开发的一个开源项目,它的...
这个功能不仅涉及到中文的拼音排序,还可能涉及到中文笔划排序,甚至英文排序。下面将详细介绍这些排序方法及其在Android开发中的应用。 **一、中文拼音排序** 中文拼音排序是基于汉字的拼音首字母进行排序,适用...
在IT领域,尤其是在编程和数据处理中,对汉字进行按拼音排序是一项常见的需求。这个任务主要涉及汉字与拼音之间的转换以及排序算法的应用。标题“软件实现汉字按拼音排序”所指的知识点主要包括以下几部分: 1. **...
通过创建一个 `RuleBasedCollator` 的实例并设置为中文环境,可以实现按照中文拼音排序的功能。 以上三个知识点总结了关于 Java 排序的一些基本应用,包括基础的冒泡排序算法、使用标准库 `Collections.sort()` ...
标题“SQL按拼音首字母排序”以及描述中的关键词“SQL按拼音排序”,指向了一种特殊的数据排序需求:在数据库中,针对包含中文字符的字段,按照中文拼音的首字母进行排序。这在处理大量含有中文名称、地点等信息的...
例如,我们可以创建一个`Person`类,包含姓名、薪水和年龄等属性,然后创建一个根据姓名拼音排序的`Comparator`: ```java import java.util.Comparator; import java.util.List; import java.util.ArrayList; ...
在中文环境下,一个常见的需求是按照汉字的拼音首字母进行排序,这被称为“拼音排序”。本篇文章将深入探讨如何在Android应用中实现这样一个功能,并提供一个公共类`PinyinSort`的详细解释。 首先,我们要理解汉字...
在Java编程中,有时我们需要将汉字转换为对应的拼音,以便进行特定的处理,如关键词搜索、数据排序等。"Java名字获取拼音"这个主题就是关于如何在Java中实现这一功能。这里我们将深入探讨如何利用开源库pinyin4j来...
本文实例讲述了Java编程实现中英混合字符串数组按首字母排序的方法。分享给大家供大家参考,具体如下: 在Java中对于字符串数组的排序,我们可以使用Arrays.sort(String[])方法很便捷的进行排序。例如: String[]...
"按姓氏拼音排序.rar" 提供的场景是将人员名单按照中文姓氏的拼音顺序进行排列。这个主题涉及到中文字符编码、拼音转换以及排序算法等多个知识点。 首先,中文字符在计算机中的表示通常采用Unicode编码,比如常用的...
### JAVA通过数组按首字母排序 在Java编程语言中,对字符串数组进行排序是一个常见的操作。本篇文章将详细介绍如何利用Java内置的`Arrays.sort()`方法按照字符串的首字母进行排序,以及如何处理大小写敏感性问题。 ...