【萌新问题】关于转换string字母大小写的一些问题

要求是:使用JOptionPane.showInputDialog输入字符串,使用toLowerCase()方法将其中的大写英文字母改为小写字母,使用toUpperCase()方法将小写字母改为大写字母。定义StringBuffer对象,调用append()方法依次添加遍历的字符,最后用toString()方法将得到的结果输出。

我查阅了相关资料,但只找到了将字母全部转换为大写或者小写,但需求是将string中的大写字母变小写,小写字母变大写。如AbcD变aBCd,我尝试了用if,ifelse循环,用ascll的数值判断,但题目要求用toLowerCase(),toUpperCase()...而不是用改变不ascll数值..所以还是没有思路,希望有大佬能指点下。

分割成一个个,判断是大写还是小写,然后再调用toLowerCase()或toUpperCase()

根据要求,写了一份实现;如果满足要求,还望采纳,谢谢;

public static void main(String[] args) {
        String showInputDialog = JOptionPane.showInputDialog("请输入要转换的字符串:");
        char[] charArray = showInputDialog.toCharArray();
        StringBuffer sb = new StringBuffer(); 
        for (char c : charArray) {
            String str = "";
            if(Character.isUpperCase(c)) {//是否大写
                str = String.valueOf(c).toLowerCase();
            }else {
                str = String.valueOf(c).toUpperCase();
            }
            sb.append(str);
        }
        //打印到控制台
        System.err.println(sb.toString());
        //输出结果
        JOptionPane.showMessageDialog(null, sb.toString(), "转换结果为:",JOptionPane.PLAIN_MESSAGE);
    }

https://blog.csdn.net/Handsome2013/article/details/80512616