• 字符串排序程序


    字符串排序程序,对一个字符串中的数值进行从小到大的排序

    例如排序前给定的字符串为" 20 78 9 -7 88 36 29"
    排序后: -7 9 20 29 36 78 88
    要求使用包装类对数值类型的字符串转换成整型进行排序。

    在这里插入图片描述

    public class StringSort {
        public static void main(String[] args) {
            String str = "20 78 9 -7 88 36 29";
            //将字符串 转化为Int类型 并存入int数组
            int[] strArr = strChange(str);
            //排序
            strSort(strArr);
            //输出
            printArray(strArr);
        }
        //字符串 转 int
        public static int[] strChange(String s){
            //观察数据可知,可用spilt方法,以空格为分隔符,将字符串分隔开,并存入String数组
            String[] spiltStr = s.split(" ");
            //创建新数组,用于存放转化为int后的数据
            int[] strInt= new int[spiltStr.length];
            for (int i = 0; i < spiltStr.length; i++) {
                //调用Integer类的parseInt方法,将String类型转化为Int类型
                strInt[i] = Integer.parseInt(spiltStr[i]);
            }
            return strInt;
        }
        //选择排序法
        public static void strSort(int[] arr){
            for (int i = 0; i < arr.length; i++) {
                int k=i;
                for (int j = i+1; j <arr.length ; j++) {
                    if (arr[k]>arr[j]){
                        k = j;
                    }
                }
                int temp = arr[i];
                arr[i] = arr[k];
                arr[k] = temp;
            }
        }
        //打印数组函数
        public static void printArray(int[] arr){
            for (int i=0;i<arr.length;i++) {
                if (i==0){
                    if (arr.length==1){
                        System.out.println("["+arr[0]+"]");
                    }else{
                        System.out.print("["+arr[i]+",");
                    }
                }else if(i==arr.length-1){
                    System.out.println(arr[i]+"]");
                }else {
                    System.out.print(arr[i]+",");
                }
    
            }
            System.out.println("--------------------------------------------------------");
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56

    在这里插入图片描述

  • 相关阅读:
    汇编-MOVSXD64位带符号扩展传送
    ES6语法新特性(下)
    c++中类的继承与多态
    第一章:网络协议的奥秘
    四臂-聚乙二醇-磷脂,4-Arm PEG-DSPE,四臂-聚乙二醇-二硬脂酰磷脂酰乙醇胺
    面试—如何介绍项目中的多级缓存?
    FFmpeg 解析Glide 缓存下的图片文件报错(Impossible to open xxx)
    qt day6 人脸识别
    4-3 nn.functional和nn.Module
    5款实用的Redis可视化工具
  • 原文地址:https://blog.csdn.net/weixin_48935611/article/details/133856979