A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 洪志豪1994 中级黑马   /  2015-12-22 21:51  /  632 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

案例演示
         * 需求:我有如下一个字符串:”91 27 46 38 50”,请写代码实现最终输出结果是:”27 38 46 50 91”
         * 100
         * 80
         * 分析:
         * 1,将字符串切割成字符串数组
         * 2,将字符串转换成数字并将其存储在一个等长度的int数组中
         * 3,排序
         * 4,将排序后的结果遍历并拼接成一个字符串

public static void main(String[] args) {
                String s = "91 27 46 38 50";
                //1,将字符串切割成字符串数组
                String[] sArr = s.split(" ");
                //2,将字符串转换成数字并将其存储在一个等长度的int数组中
                int[] arr = new int[sArr.length];
                for (int i = 0; i < arr.length; i++) {
                        arr[i] = Integer.parseInt(sArr[i]);         //将数字字符串转换成数字
                }
               
                //3,排序
                Arrays.sort(arr);
               
                //4,将排序后的结果遍历并拼接成一个字符串27 38 46 50 91
                /*String str = "";
                for (int i = 0; i < arr.length; i++) {
                        if(i == arr.length - 1) {
                                str = str + arr[i];                                //27 38 46 50 91
                        }else {
                                str = str + arr[i] + " ";                //27 38 46 50
                        }
                }
               
                System.out.println(str);*/
               
                StringBuilder sb = new StringBuilder();
                for (int i = 0; i < arr.length; i++) {
                        if(i == arr.length - 1) {
                                sb.append(arr[i]);
                        }else {
                                sb.append(arr[i] + " ");
                        }
                }
                System.out.println(sb);
        }



1 个回复

倒序浏览
icm 中级黑马 2015-12-22 22:23:24
沙发
原来排序只需要使用Arrays.sort(),老想着是不是要来个冒泡,选择之类的。。学到
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马