黑马程序员技术交流社区

标题: 下面的程序结果是什么,求大神 [打印本页]

作者: xuzh2009    时间: 2016-7-7 22:24
标题: 下面的程序结果是什么,求大神
class  Test
{
public  static  void  main(String[] args)
{
                System.out.println(““+’a’+1);
}
}
好难啊..不知道是什么,求大神


作者: cb747706401    时间: 2016-7-7 22:48
    等于 a1啊
作者: 15623379627    时间: 2016-7-7 23:00
xuzh2009 发表于 2016-7-7 22:24
class  Test
{
public  static  void  main(String[] args)

等于 a1吧
作者: 新人—小明同学    时间: 2016-7-7 23:10
为什么是a1( ⊙ o ⊙ )啊!
作者: 夏:默秋凉    时间: 2016-7-8 00:10
不是a1,是 98
作者: 夏:默秋凉    时间: 2016-7-8 00:16
原因是这样
字符'a'打印出的是98,因为java中只要这一种int数据类型可以和char字符型数据进行转换,其他都不行,'a'的对应的数值是97,在加上1就是98,至于为什么+1,不用说了吧
如果变成“a”的话这个结果就是a1因为字符串后的结果都会变成字符串,至于“ ”这个是里面是内容为空的字符串
关于int和char的转换
int num = 97;
char ch = (char)num;结果输出是a
但是如果char ch = 'a';    int num = ch;  这样打印出的就是97
作者: Huyaal    时间: 2016-7-8 00:23
输出结果为a1
作者: longforus    时间: 2016-7-8 14:10
夏:默秋凉 发表于 2016-7-8 00:16
原因是这样
字符'a'打印出的是98,因为java中只要这一种int数据类型可以和char字符型数据进行转换,其他都 ...

先算““+’a'  字符串加其它的得字符串 结果是 "   a"
再 +1
得"   a1"
作者: 坏坏坏男孩    时间: 2016-7-8 22:50
你要知到输出语句中双引号里面的东西原封不动输出, 后面输出数a1,字符串和数字连接输出时是字符串,'如果没有前面的空格输出得的98因为前面的空格和'a'组成了字符串
作者: 惊鸿游龙    时间: 2016-7-9 08:58
毫无疑问是a1,字符串与任何字符或是数字一起运算时,输出的都是字符串
作者: 怡蓝    时间: 2016-7-9 09:03
好复杂,好复杂,好复杂啊啊啊啊啊




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