记一个字母大小写转换

tsvico Lv5

我们常见的大小写转换

1
2
3
4
5
6
7
8
9
10
private static void change(char c) {
//如果输入的是大写,+32即可得到小写
if(c>='A' && c<='Z'){
c+=32;
System.out.println(c);
}else if(c>='a' && c<='z'){ //如果输入的是小写,-32即可得大小写
c-=32;
System.out.println(c);
}
}

我们不常见的↓

学到的一个更简单的方式
大小写字母切换:
s^=(1<<5);
大小写字母相差 32, 又因为异或重要特性:不进位加法,所以大写字母和 (1<<5) 异或变成变成小写字母,小写字母和 (1<<5) 异或变成大写字母代码地址

1
2
3
4
5
private static void change(char s) {
//char s = 'A';
s = (char)(s ^ (1 << 5));
System.out.println(s);
}
  • 标题: 记一个字母大小写转换
  • 作者: tsvico
  • 创建于 : 2020-01-14 20:57:00
  • 更新于 : 2022-05-22 16:05:38
  • 链接: https://blog.tbox.fun/2020/5e064375.html
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论
目录
记一个字母大小写转换