针对老师解答提出的疑问
老师那条解答被采纳了不能回复,所以老师的解答贴在这里:
ch + 1:Java底层会先使用‘8’转换对应的ASCII码十进制的值进行加法运算,‘8’对应ASCII为56,56+1会得到57对应值。然后它可以自动转换为char类型,再和case进行匹配。
这个56+1=57是字符‘8’的加法加1位吗? 如果相加是整数型则不会将最后的结果57自动转换为char类型吧,需要强制类型转换才对吧
7
收起
正在回答
3回答
同学你好,你的理解是正确的,例如如下代码:
public static void main(String[] args) { int ch=1; int r=10; switch(ch+'A') { case 64:r=r+3; case 65:r=r+5; case 66:r=r+6;break; default: r=r+8; } System.out.println(r); }
输出结果:
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
1. Java 零基础入门
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星