Ste*_*her 17 java switch-statement
有了Java,我正在读一本书,重新涵盖我在大学里忘记的基础知识,他们向我展示了一个像这样的swtich语句:
void helpon(int what) {
switch(what) {
case '1': break;
case '2': break;
}
}
Run Code Online (Sandbox Code Playgroud)
我省略了案例代码,因为无关紧要.
但是,使用一个int并且仍然用单引号括起case语句对我来说似乎很奇怪,所以我去了oracle文档并找到了一个与上面的例子相同的例子,但是没有引号.
对于使用整数作为案例的switch语句,引号是否重要?为什么会'1'工作,如果what是一个int并且'1'是一个炭?
Lui*_*oza 15
单引号字符是文字char,char值是int值.A char可以表示int为其UTF-16值,例如:
char c = '1';
int i = c;
System.out.println(i);
Run Code Online (Sandbox Code Playgroud)
输出:
49
Run Code Online (Sandbox Code Playgroud)
更多信息:
不要混淆ASCII字符(单字节,0到127之间的值)和UTF-16(每个代码点2个字节,0到65535之间的值).更多信息:Unicode,UTF,ASCII,ANSI格式差异
| 归档时间: |
|
| 查看次数: |
1217 次 |
| 最近记录: |