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

© 小十 中级黑马   /  2015-3-9 14:17  /  815 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class DeMo12 {
        public static void main(String[] args) {
       
                String str = "AbCdEf";
                countchar(str);

        }

        private static void countchar(String str) {
                //把数组中大写字母转成小写、小写字母转成大写的程序。
                StringBuilder sb = new StringBuilder();
                char[] ch = str.toCharArray();
                        for(int x = 0;x<ch.length; x++){
                                if(Character.isLowerCase(ch[x])){
                                        sb.append(Character.toUpperCase(ch[x]));
                                }else if(Character.isUpperCase(ch[x])){
                                        sb.append(Character.toLowerCase(ch[x]));
                                }
                       
                }
                System.out.println(sb);
               
               
               
        }
}
问题是:如果String str = ""; 时怎么办(怎么给予提示信息?是不是应该抛出异常?该怎么抛)

评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1 赞一个!

查看全部评分

7 个回复

正序浏览
你这不是要把字母以外的字符全部干掉吗
回复 使用道具 举报
同意楼上
回复 使用道具 举报
我觉得是这样的
1、你这个方法按正常的话应该是返回一个已经转变好的String对象
2、当str=""的话,就直接return ""就可以啦!!
回复 使用道具 举报
在for循环前面进行if(ch.length==0) 判断。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马