输出有差别

来源:3-15 编程练习

残泪

2021-05-15 15:37:20


char c='S'; 		
System.out.println(+c);//输出是87,而加了”c=“就成了”s“,//

​是为啥呢?

写回答

2回答

好帮手慕阿园

2021-05-15

同学你好,Jason什么鬼同学说的是正确的,这样输出是将char类型数据转为int类型的输出,所以输出的是83,但是加上c=后,+变成了拼接字符,就会将原本的数据进行输出,同学可以参考Jason什么鬼同学贴出的代码

祝学习愉快~

1

Jason什么鬼

2021-05-15

先更正一下,输出应该是83。

如果想要得到c=83这个结果需要运行下面的代码:

char c='S';
System.out.println("c="+(int)c);


你所提到的,

如果只System.out.println(+c)的时候会默认打印出 'S' 所对应的int类型,因为想要合理的进行相加的操作,只能将char类型变量转换为其int类型 。


如果变成("c="+c), 前面的"c="是一个String类型,所以决定了后面的c将不会以int形式出现,取而代之只能以原本的char类型出现,这样才能够相加 (String + char) 。

0

0 学习 · 16556 问题

查看课程