import java.util.Arrays;
public class StringSort {
public static void main(String[] args) {
String string = "to good too no string and now";
String sortString = sortChar(string);
System.out.println(sortString);
}
private static String sortChar(String str) {
// 1.将字符串转化成数组
char[] chs = stringToArray(str);
// 2.对数组进行排序
sort(chs);
// 3.将数组转成字符串
return toString(chs);
}
private static String toString(char[] chs) {
return new String(chs);
}
// 对字符数组进行升序排序
private static void sort(char[] chs) {
Arrays.sort(chs);
}
// 将字符串转化成为数组
private static char[] stringToArray(String string) {
return string.toCharArray();
}
}
先用StringTokenizer将原字符串分解到一个字符串数组里面,然后用Array类(需要import)的sort方法就可以排序了,简单.....
用compareTo方法,然后像排列一个数组一样就好了……
compareTo在这里用太复杂了吧……
明明有Arrays.sort()啊……
==============================================
String str= "to good too no string and now";
String[] strArr = str.toString().split(" ");
Arrays.sort(strArr);
StringBuffer strBuf = new StringBuffer(50);
for (String i: strArr)
strBuf.append(i).append(" ");
System.out.println(strBuf.toString().substring(0, str.length()));