转换成根据省份字母排序

来源:互联网 发布:centos 安装php7.1.5 编辑:程序博客网 时间:2024/05/22 06:28
/**转换成根据省份字母排序     * @anth  zhangHongLi     * @param list     * @return   List<SelectVO>     */    public List<SelectVO> sortProvineName(List<SelectVO> list){        List<SelectVO>  transArrayList=new ArrayList<SelectVO>();        Map<String ,String> transMap=new  HashMap<String ,String>();        String[] newArPName =new String[list.size()];        for(int i=0,j=list.size();i<j;i++){            newArPName[i]=tranPinYin(list.get(i).getName());     if("ZHONGQINGSHI".equals(newArPName[i])){     newArPName[i]="CHONGQINGSHI";}         transMap.put(newArPName[i],list.get(i).getName());        }        Arrays.sort(newArPName,String.CASE_INSENSITIVE_ORDER);        for(int i=0;i<newArPName.length;i++) {                newArPName[i]=transMap.get(newArPName[i]);        }        List<String> newProvineNameList = Arrays.asList(newArPName);        for(int i=0,j=newProvineNameList.size();i<j;i++){            SelectVO selectVO=new SelectVO();            for (SelectVO vo : list) {                if(newProvineNameList.get(i).equals(vo.getName())){                    selectVO=vo;                    transArrayList.add(selectVO);                }            }        }        return transArrayList;    }    /**     * 将汉字转化成拼音     *@auth zhanghongli     * @param chinese 汉字串     * @return 汉语拼音     */    public  String tranPinYin(String chinese) {        StringBuffer pyBuff = new StringBuffer();        char[] arrChar = chinese.toCharArray();        HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();        defaultFormat.setCaseType(HanyuPinyinCaseType.UPPERCASE);        defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);        for (int i = 0; i < arrChar.length; i++) {                try {                pyBuff.append((arrChar[i] > 4)?PinyinHelper.toHanyuPinyinStringArray(arrChar[i], defaultFormat)[0]:arrChar[i]);            } catch (BadHanyuPinyinOutputFormatCombination badHanyuPinyinOutputFormatCombination) {                badHanyuPinyinOutputFormatCombination.printStackTrace();            }        }        return pyBuff.toString();    }