/**转换成根据省份字母排序
* @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();
}
转换成根据省份字母排序
最新推荐文章于 2020-10-24 10:32:19 发布