题目描述
输入任意个字符串,将其中的小写字母变为大写,大写字母变为小写,其他字符不用处理;
输入描述:
任意字符串:abcd12#%XYZ
输出描述:
输出字符串:ABCD12#%xyz

示例1:
输入: abcd12#%XYZ
输出: ABCD12#%xyz

代码实现:

/**
大小写转换
**/
import java.util.Scanner;

class TestChange
{
	public static void main(String[] args) 
	{
		Scanner sc = new Scanner(System.in);
        String str1 = sc.nextLine();
		System.out.println(changeStr(str1));
	}

	public static String changeStr(String str){

       char[] c = str.toCharArray();  //先将字符串转换成字符数组
	   int value = 'a'-'A';  //计算大小写间差值:32

       //循环遍历字符数组
	   for(int i = 0; i < c.length; i++){
           if('a'<=c[i] && c[i] <='z'){
              c[i] = (char)(c[i]-value);      //小写变大写
		   }else if('A'<=c[i] && c[i] <='Z'){
               c[i] = (char)(c[i]+value);      //大写变小写
		   }
	   }

       String laststr = new String(c);  //再将字符数组转换成字符串
	   return laststr;
	}
}

运行结果:

 

附:

char c = (char)('a'-32);
System.out.println('a');
System.out.println('a'-32);
System.out.println(c);

运行结果:

 

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐