需求:有一个字符串:“91 27 46 38 50”,请写程序实现最终输出结果:“27 38 46 50 91”
分析:
第一步把字符串中的数字分割出来(根据空格)放入一个数组中;
第二步将数组排序;
第三步排序完成再次转化成字符串拼接起来;
根据空格分割字符串:https://blog.csdn.net/yezonghui/article/details/106455940
具体实现:
- 定义一个字符串
- 把字符串中的数字数据存储到一个int类型的数组中;
public String[] split(String regex) :得到每一个数字数据
public static int parseInt(String) :把每一个数据存储到int数组中 - 对int数组进行排序;
- 排序后的数组元素进行拼接得到字符串
采用StringBuilder来具体实现; - 输出结果;
package Integerr;
import java.util.Arrays;
public class StringSort {
public static void main(String[] args) {
String s = "91 27 46 38 50"; // 1
String[] strArray = s.split(" "); // 2
int[] intArr = new int[strArray.length];
for (int i = 0; i < intArr.length; i++) {
intArr[i] = Integer.parseInt(strArray[i]);
}
Arrays.sort(intArr); //3
StringBuilder sb = new StringBuilder(); //4
for (int i = 0; i < intArr.length; i++) {
if (i == intArr.length - 1) {
sb.append(intArr[i]);
} else {
sb.append(intArr[i] + " ");
}
}
String s2 = new String(sb); //5
System.out.println(s2);
}
}