//将字符串中的数据从小到大排序 "20 9 44 11 -5 -6 3 -54 -88 99"
import java.lang.reflect.Array;
import java.util.Arrays;
public class StringSort {
//将字符串中的数据从小到大排序 "20 9 44 11 -5 -6 3 -54 -88 99"
/*
* 思路:
* 1,先把字符串转化成字符串数组
* 2,把字符串数组转换成整型数组
* 3,对整型数组进行排序
* 4,把排序好的整型数组转成字符串
*/
private static final String CONDITION = " ";
public static void main(String[] args) {
// TODO Auto-generated method stub
String string = "20 9 44 11 -5 -6 3 -54 -88 99";
System.out.println("排序之前=="+ string);
//字符串转成字符串数组
String[] str_arr = stringToArray(string);
//把字符串数组转换成整型数组
int[] int_arr = stringArrayToIntArray(str_arr);
//把整型数组按从小到大排序
int[] int_sort = intArrayToSort(int_arr);
//把排序好的整型数组转成字符串
string = intArrayToString(int_sort);
System.out.println("排序之后=="+ string);
}
public static String intArrayToString(int[] int_sort) {
// TODO Auto-generated method stub
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < int_sort.length; i++) {
if (i==int_sort.length-1) {
stringBuilder.append(int_sort[i]);
}else {
stringBuilder.append(int_sort[i]).append(CONDITION);
}
}
return stringBuilder.toString();
}
public static int[] intArrayToSort(int[] int_arr) {
// TODO Auto-generated method stub
Arrays.sort(int_arr);
return int_arr;
}
public static int[] stringArrayToIntArray(String[] str_arr) {
// TODO Auto-generated method stub
int[] arr = new int[str_arr.length];
for (int i = 0; i < arr.length; i++) {
arr[i] = Integer.parseInt(str_arr[i]);
}
return arr;
}
public static String[] stringToArray(String string) {
// TODO Auto-generated method stub
String[] strings = string.split(CONDITION); //把字符串按照以空格切割成字符数组
return strings;
}
public static String stringToSort(String string) {
// TODO Auto-generated method stub
return null;
}
}
输出结果:
排序之前==20 9 44 11 -5 -6 3 -54 -88 99
排序之后==-88 -54 -6 -5 3 9 11 20 44 99