static char[] sortChars2(char[] src){ ArrayList list = new ArrayList(); System.out.println(String.valueOf(src)); for(int i=0;i<src.length;i++){ if((int)src[i]>=65&&(int)src[i]<=90) list.add(src[i]); } for(int i=0;i<src.length;i++){ if((int)src[i]>=65&&(int)src[i]<=90) src[i] = (char)(src[i] + 32); } Arrays.sort(src); System.out.println(String.valueOf(src)); for(int i=0;i<list.size();i++){ for(int k=0;k<src.length;k++){ if(String.valueOf(src[k]).equalsIgnoreCase(String.valueOf(list.get(i)))&& src[k]>=97&&src[k]<=122){ src[k] = (char)(src[k] - 32); break; } } } System.out.println(String.valueOf(src)); return src; } public static char[] sortChars(char[] chs, final boolean upperFisrt) { Character[] srcArray = new Character[chs.length]; char[] retArray = new char[chs.length]; int index = 0; for (char ch : chs) { srcArray[index++] = ch; } Arrays.sort(srcArray, new Comparator<Character>() { public int compare(Character c1, Character c2) { char ch1 = Character.toUpperCase(c1); char ch2 = Character.toUpperCase(c2); if (ch1 == ch2) { int tempRet = c1.charValue() - c2.charValue(); return upperFisrt ? tempRet : -tempRet; } else { return ch1 - ch2; } } }); index = 0; for (char ch : srcArray) { retArray[index++] = ch; } return retArray; } }
java char 排序
最新推荐文章于 2024-08-31 22:40:54 发布