菜鸟入门篇——字符串中的数据排序

需求

有一个字符串“91 27 46 38 50”,请写程序实现最终输出结果:“27 38 46 50 91”

思路详解

  1. 定义一个字符串,存储数据
  2. 将字符串中的数据放入int数组中
  3. 对int数组中的元素进行排序
  4. 将元素拼接起来,转化为String类型
  5. 输出字符串
    这是大体的对于这道题的思路,下面具体用代码来实现

代码实现(附注释)

public static void main(String[] args) {
        //定义字符串
        String s = "91 27 46 38 50";
        //将字符串按空格分割,并且数据存入一个String类型的数组里面
        String[] s1 = s.split(" ");
        //定义一个int类型数组
        int[] arr = new int[s1.length];
        //把String类型数组中的每一个数据放入int数组中
        for (int i = 0; i < s1.length; i++) {
            //定义一个String变量存放String数组中数据
            String s2 = s1[i];
            //将String变量转为int类型
            int s3 = Integer.parseInt(s2);
            //将int类型变量存入int数组
            arr[i] = s3;
        }
        //用Arrays类中方法为int数组排序
        Arrays.sort(arr);
        //将int类型数组中的各个元素拼接起来
        StringBuilder stringBuilder = new StringBuilder();
        for (int i = 0; i < s1.length; i++) {
            //除了最后一个数字后面没有空格,别的数字后面加上空格
            if (i == arr.length - 1) {
                stringBuilder.append(arr[i]);
            } else {
                stringBuilder.append(arr[i] + " ");
            }
        }
        //将StringBuilder转换为String类型
        s = stringBuilder.toString();
        //输出目标字符串
        System.out.println(s);
    }

这题还是挺基础的,综合运用了字符串的分割与拼接,数据类型的转换还有常用API的方法使用。

你可能感兴趣的:(java)