对一个字符串中的数值进行从小到大的排序。("20 78 9 -7 88 36 29")
思路:
1,用字符串对象的切割方法将大串变成多个小串。
2,数值最终变成小字符串,字符串-->基本类型,可以使用包装类。
代码示例:
public class Test {
private static final String SPACE_SEPATATOR = " ";
public static void main(String[] args) {
System.out.print("[");
String numStr = "20 78 9 -7 88 36 29";
System.out.println(numStr+"]");
numStr = sortStringNumber(numStr);
System.out.println(numStr);
}
public static String sortStringNumber(String numStr) {
//1,将字符串变成字符串数组
String[] str_arr = StringToAyyay(numStr);
//2,将字符串数组变成int数组
int[] num_arr = toTntArray(str_arr);
//3,将int数组进行排序
mysortArray(num_arr);
//4,将排序后的int数组变成字符串
String temp = ArrayToString(num_arr);
return temp;
}
public static String ArrayToString(int[] num_arr) {
StringBuilder sb = new StringBuilder();
sb.append("[");
for (int i = 0; i < num_arr.length; i++) {
if (i!=num_arr.length-1) {
sb.append(num_arr[i]+SPACE_SEPATATOR);
}
else {
sb.append(num_arr[i]+"]");
}
}
return sb.toString();
}
private static void mysortArray(int[] num_arr) {
Arrays.sort(num_arr);
}
public static int[] toTntArray(String[] str_arr) {
int[] num_arr = new int[str_arr.length];
for (int i = 0; i < num_arr.length; i++) {
num_arr[i] = Integer.parseInt(str_arr[i]);
}
return num_arr;
}
public static String[] StringToAyyay(String numStr) {
String[] Str_0 = numStr.split(SPACE_SEPATATOR);
return Str_0;
}
}
运行结果: