案例:字符串中数据排序
需求:有一个字符串“91 27 46 38 50”,请用程序实现最终输出结果是“27 98 46 50 91”.
(此处需注意字符串是有空格的)
思路:
1.定义一个字符串
2.将字符串数据存储到一个int类型的数组中需要用到:
public String[] split(String regex)方法,将此字符串拆分为给定regular expression的匹配项
3.定义一个int数组,把String[]数组中的每一个元素存储到int数组中
public static int parseInt(String s)
4.对int数组进行排序
5.排序后的int数组中的元素进行拼接得到一个字符串,这里采用StringBuilder来实现
代码演示:
/*
需求:有一个字符串:"91 27 46 38 50"
用程序实现最终输出结果是:"27 38 46 50 91"
思路:
1.定义一个字符串
2.将字符串数据存储到一个int类型的数组中需要用到:
public String[] split(String regex)方法,将此字符串拆分为给定regular expression的匹配项
3.定义一个int数组,把String[]数组中的每一个元素存储到int数组中
public static int parseInt(String s)
4.对int数组进行排序
5.排序后的int数组中的元素进行拼接得到一个字符串,这里采用StringBuilder来实现
*/
public class IntegerDemo {
public static void main(String[] args) {
//1.定义字符串数组
String s1 = "91 27 46 38 50";
//2定义一个Sting数组通过split方法将字符串中的数据存入Sting数组中
String[] s2 = s1.split(" ");
//4.定义一个int数组
int[] arr = new int[s2.length];
for (int x = 0; x < s2.length; x++) {
//5.将String数组中的每一个String元素使用Integer包装类的parseInt方法转换为十进制的整数并插入到int数组
arr[x] += Integer.parseInt(s2[x]);
}
System.out.println(method(arr));
}
//6.定义一个方法用于对数组排序并转换为字符串类型
public static String method(int[] arr) {
//7.直接使用冒泡排序对数组进行排序
for (int x = 0; x < arr.length - 1; x++) {
for (int j = 0; j < arr.length - 1 - x; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = temp;
}
}
}
//8.创建StringBuilder对象遍历将int数组的元素并做字符串拼接
StringBuilder sb = new StringBuilder();
sb.append("最终结果是:”");
for (int j = 0; j < arr.length; j++) {
if (j == arr.length - 1) {
sb.append(arr[j] + "”");
} else {
sb.append(arr[j] + ",");
}
}
//将StringBuilder数据转换为String类型并返回
String s = sb.toString();
return s;
}
}
--欢迎大家与我交流java知识