`
xiang37
  • 浏览: 415691 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Java拼音排序

 
阅读更多

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(", ");
        }
    }
}

 其中输出结果为:

 

[参数, 奇迹, 孙子兵法, 糖水, 网站, 香飘飘, 颐和园, 隐士, 障碍, 怡人]

 

怡人明显应该在障碍前面才对。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics