黑马程序员技术交流社区

标题: 求解答 [打印本页]

作者: HM周一帆    时间: 2013-3-24 20:26
标题: 求解答
本帖最后由 ivan5544 于 2013-3-24 21:12 编辑

System.out.println('a') 和 System.out.println('a'+1)  为什么不同 ?求解答
作者: 疯狂程序    时间: 2013-3-24 20:34
'' 为字符,第一个输出字符a,第二个由于字符占两个字节,整数默认为 int类型,所以转换为高精度的int,所以'a'会转换为97,故结果为98
作者: 聂益飞    时间: 2013-3-24 20:35
上面的已经回答完毕了!
作者: 刘海陆    时间: 2013-3-24 20:41

System.out.println('a') 这句 是打印 char类型的 a

System.out.println('a'+1) 这句  ('a'+1) 是数算运算表达式,自动类型转换成int,'a'根据ASCII码表为97,所以结果为 98 。
作者: 炉海佳    时间: 2013-3-24 20:48
这里主要弄清楚这个加号的意义就清楚了,Java中的加号有两个作用,一个是运算符,一个是字符串连接符, 如果是 System.out.println(“a”+1)结果就是a1(字符串连接符作用)。而System.out.println('a'+1)结果是98(运算符作用),字符a对应的数字是97,加1就是98
作者: 柳 德 彬    时间: 2013-3-24 20:51
楼上的都说的对,我就逛逛




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2