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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© dydwjc 中级黑马   /  2016-9-16 23:23  /  698 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

题目要求:
         *         定义一个方法如下:
         *                 public static String change(String str){
         *                
         *                 }
         *         要求实现功能:
         *                 传入的参数是一个纯英文字符串,字符串可以包含空格,
         *                 方法将由空格分开的各个单词的最后一个字母变成大写,其余字母全部小写
         *         例如:
         *                 传入的字符串为:Wo ai hEi MA zhe ge DA JIA TING
         *                 返回的字符串为:wO aI heI mA zhE gE dA jiA tinG
         *
         *         在主方法中调用该方法测试并打印结果
public static void main(String[] args) {
                String s = "Wo ai hEi MA zhe ge DA JIA TING";
                System.out.println(change(s));
               
        }

        public static String change(String s) {
                //切割字符串变成字符数组
                String[] arr = s.split(" ");
                //定义一个字符串缓冲区
                StringBuffer sb = new StringBuffer();
                //遍历数组
                for (int i = 0; i < arr.length; i++) {
                        arr[i] = arr[i].toLowerCase()//把所有元素转换成小写字母
                                        .substring(0,arr[i].length() - 1)//从第一个字符开始截取到最后一个字符,不包括最后一个字符
                                        .concat(arr[i].substring(arr[i].length() - 1)//连接截取到的最后一个字符
                                                        .toUpperCase().concat(" "));//转换成大写,再拼接一个空格
                        sb.append(arr[i]);//添加到stringbuffer中
                       
                }
                //返回
                return sb.toString();
        }

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马