黑马程序员技术交流社区

标题: 问一个类型转换的问题 [打印本页]

作者: 一个小菜    时间: 2014-12-20 21:22
标题: 问一个类型转换的问题
System.out.println('a')和System.out.println('a'+1)的区别在哪里呢
作者: huoxy    时间: 2014-12-20 21:40
  1. System.out.println('a');//a
  2. System.out.println('a'+1);//98
复制代码


第一句就是直接打印一个char变量值a;第二句是先将'a'类型提升为int,并打印与1相加的结果(int型)98。
作者: kenhe    时间: 2014-12-20 22:11
第一个输出的是字符a  第二个提升为 int  98
作者: 呢?    时间: 2014-12-20 22:46
('a'+1)这里会提升类型到int
作者: zcyemenye    时间: 2014-12-20 22:52
字符型数据在运算时会自动类型提升。
作者: reyzarc    时间: 2014-12-20 23:04
沙发是正解
作者: 青衫禅客    时间: 2014-12-20 23:10
一个是直接打印字符;一个是先把字符'a'和1做相加运算后再打印,其中字符会转换成int类型和1运算,结果为int类型数值98
作者: Honelyboy    时间: 2014-12-20 23:22
System.out.println('a')是直接打印字符
作者: Honelyboy    时间: 2014-12-20 23:26
刚才回复了一般
System.out.println('a')是直接打印字符,打印的类型是字符类型。
System.out.println('a'+1)是先把‘a'+1做运算之后再打印,打印的类型被隐式转换为int整数类型。
作者: 只会金克斯    时间: 2014-12-20 23:27
byte short  char   在参与运算的时候 都会自动提升数据类型为int
作者: qowoeo7538    时间: 2014-12-20 23:39
一个是输出的是字符,而另一个输出的是98.(char 自动转型)




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