题目:

在控制台输入字符串,把字符串中所有字母大写转换为小写,小写转换为大写,其他字符保持原样,并按之前的顺序输出

做题思路:

首先我们要知道怎么判断字符串中的字符是不是字母

判断字符串中是否包含小写字母:

String str ="weXgWEGwg";
char arr[] =str.toCharArray();
int count =0;//声明一个变量,如果包含小写字母就++
for(int i=0;i<arr.length;i++){if(a>='a'&&a<='z'){count++;}
}
if(count!=0){System.out.println("字符串中包含"+count+"个小写字母");
}

如上可得,如果判断是否包含大写字母把判断条件换成:a>='A'&&a<='Z',就可以了(切记一定要声明char类型的数组)

知道如何判断字母大小写,那么关键点也就迎刃而解了

Scanner sc = new Scanner(System.in);
System.out.println("请输入字符串:");
String s=sc.next();
String str ="";
char[] arr =s.toCharArray();
for(int i=0;i<arr.length;i++){char c =arr[i];if(c>='a'&&c<'z'){char c1 =(char)(c-32);str+=c1;}else if(c>='A'&&c<='Z'){char c1=(char)(c+32);str+=c1;}else{str+=c;}
}
System.out.println("字符串大小写转换之后是:"+str);  

那么肯定还有人好奇为什么还要c-+32,这就牵扯到了ASCLL编码的知识了

美国信息交换标准代码的ASCII缩写。它是一个7位字符集,包含128个(0到127)个字符。它代表一个字符的数值。

大小写字母在ascii码表中相减的值为32,例如:

所以大小写转换的时候要±32

那为什么char c1 =(char)(c-32);用char类型接收的时候还要强制转换一下?

根据上图ASCII编码表中可知A的值为65,那可以尝试用Java输出一下看看

char A=65;
System.out.println(A);

输出的结果是A,所以这个c-32,他此时的值是int类型的,所以需要强制转换一下

Java中如何大小写字母进行转换(ASCII编码)相关推荐

  1. java中打印大小写字母

    public class Homework05 {public static void main(String[] arge) {//输出a-z的大小写字母//方法一for(int i = 65; i ...

  2. 杂记(1)java读取char类型2. 大小写字母的转换3. 字符串的拼接4. 一串数字排序

    1. java读取char类型 应为java中没有nextchar();函数,所以只能先读取一行,即 Sting a=sc.nextline(); char need=a.charAt(0);//取字 ...

  3. ASCII中关于大小写字母间隔为32的思考

    一直没有搞清楚为什么在ASCII中要把大小写字母的间隔设置为32,今天才发现这样设置的精妙之处:方便了程序对大小写字母进行转换.请看: ================= 十进制        32 ...

  4. C语言,英文小写转大写,小写字母转换成大写字母通过大小写字母间的ASCII值的关系来建立代码

    #include <stdio.h> int main() {char a,b;scanf("%c",&a);b=a-32;printf("%c&qu ...

  5. java中字符和字节的转换_Java最佳实践–字符到字节和字节到字符的转换

    java中字符和字节的转换 在使用Java编程语言时,我们将继续讨论与建议的实践有关的系列文章,我们将讨论String性能调优. 特别是,我们将着重于使用默认编码时如何有效地处理字符到字节和字节到字符 ...

  6. 【微机原理 实验】大小写字母的转换实验 (含汇编代码)

    实验八  大小写字母的转换实验 更多微机实验:https://blog.csdn.net/yxp189/column/info/39992 汇编语言-微机原理与接口技术-实验 注意:未经允许,请勿转载 ...

  7. java中的大小写 String大写S

    练习五:string 数组 String [] names ={"James", "Larry", "Tom", "Lacy&qu ...

  8. 7.Java中变量的隐式转换以及强类型转换

    1.变量的相加,(变量的数据类型一致),直接运算即可!          结论:         Java中变量的 隐式转换(数据类型的默认类型提升)         byte,short,char- ...

  9. java中的进制输出转换_java中进制的转换,Byte与16进制的转换

    java中对于进制的转换有很多方式,其中对于常见的基本的二进制 八进制 十进制 十六进制等的转换有对于的包装类实现,不需要通过二外的算法来进行实现,具体如下: 首先关于最简单的二进制转换的方法有: 十 ...

最新文章

  1. win10 安装tensorflow
  2. 网站SEO秒收录对网站有哪些要求?
  3. LeetCode 01两数之和02两数相加
  4. hdu 5730 Shell Necklace——多项式求逆+拆系数FFT
  5. ciaodvd数据集的简单介绍_COCO数据集的简单介绍
  6. 正则表达式中原子的5种类型
  7. xMind思维导图软件如何合并多个导图
  8. 毕设日志——Linux服务器状态查询命令
  9. Bootstrap+angularjs+MVC3+分页技术+角色权限验证系统
  10. python_selenium简单的滑动验证码
  11. liunx 安装 confluent-kafka-go
  12. java web教程下载_Java Web云应用开发项目式教程 中文pdf扫描版[208MB]
  13. 河北师范大学计算机专业保研率,12所师范大学2018-2020年保研率对比!附9所师范大学2021保研率...
  14. EasyCVR人脸识别框在播放器上显示及消失的机制设定
  15. 用excel打印工资条
  16. 理光GR Android wifi,理光gr2wifi怎么用
  17. 关于STM32L476位带操作的说明
  18. 正则表达式系列:匹配正数、负数和小数 (正负整数)
  19. C语言和win32绿色鼠标连点器,带代码(Windows)
  20. peerDependencies WARNING问题剖析

热门文章

  1. Winform 动画效果
  2. 矩阵分解——8.2 乔里斯基(Cholesky)分解
  3. 基于T5L0的多参数水质检测仪方案
  4. python 爬虫基础笔记(一)
  5. 【containerd 源码分析】containerd image pull 源码分析
  6. WUST-CTF 2020 WriteUp
  7. 看完几十篇“解决remains in conflict报错”的文章后,我决定重新导入项目!(IDEA·SVN)
  8. arm 数据比较基础知识
  9. 【积沙成塔】Android 环境下编译后出现乱码错误的情况
  10. Cocos2D实现Fruit Ninja里面刀光效果教程