public class test3 { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
char ch='8';
ch+=1;
int r=10;
switch( ch+1 )
{ case '7':
r=r+3;
case '8':
r=r+5;
case '9':
r=r+6;
break;
default:
r=r+8; }
System.out.print(ch);
}
当不运算打印ch的时候是 8
在print中运算ch+1的时候是 57
现在这种情况运算后打印ch 是 9很奇怪,不明白怎运算的过程。
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
char ch='8';
ch+=1;
int r=10;
switch( ch+1 )
{ case '7':
r=r+3;
case '8':
r=r+5;
case '9':
r=r+6;
break;
default:
r=r+8; }
System.out.print(ch);
}
当不运算打印ch的时候是 8
在print中运算ch+1的时候是 57
现在这种情况运算后打印ch 是 9很奇怪,不明白怎运算的过程。
在print中运算ch+1的时候是 57 //这里加一打印出来的是ASCII码8的ASCII码为56,加一得57
现在这种情况运算后打印ch 是 9//这里的运算也是ASCII码但是作为字符输出,所以是9