Java学习日志7:对System.out.println()的深入理解

System.out.println()方法的作用

System.out.println()是Java中System类中的定义的一种方法,可以用来输出数字、字符串、变量等元素并在输出后进行换行。

System.out.println()方法的使用格式

输出数字

System.out.println(1);

输出字符

System.out.println("我爱学习");

输出变量

int a = 0;
System.out.println(a);

复合输出

char a = '年';
System.out.println("我爱你" + 10000 + a);

问题

今天我朋友问了我一个问题。

由于此时这四个字符进行了运算,所以左后输出的是他们对应表中的数字的和。

所以他疑问:他该如何才能输出这四个字符并使他们连起来输出。

于是我我试验了许多次,但最终并没有结果。

最后我找资料,找到了另一方法。

System.out.printf("%c%c%c%c",c1,c2,c3,c4);

此时便能输出我爱学习这四个字符。

但我的直觉告诉我用原方法一定也能达到一样的效果

于是我问了另一个同学,虽然她也没有思路,但是她让我找到了方法。

System.out.println("" + c1 + c2 + c3 + c4);

将原代码改成这样便可输出我爱学习这四个字符。

然后我查到了原因。

在Java中,当使用加号+连接一个字符串和一个非字符串(比如字符)时,会触发字符串的拼接操作,即非字符串会被转换为字符串然后与其他字符串连接起来。这个过程称为字符串拼接或字符串连接。

在你的情况下,如果直接使用System.out.println(c1 + c2 + c3 + c4);,Java会先计算c1 + c2,然后再将结果与c3相加,最终与c4相加。由于这是按照ASCII码值相加的方式,得到的结果是ASCII码值之和而不是拼接后的字符串。

而在System.out.println("" + c1 + c2 + c3 + c4);中,空字符串""会被作为起始字符串,此时Java会将c1c2c3c4依次拼接到空字符串上,实现了字符串的拼接操作,最终输出的结果是字符串"ABCD"。

  • 11
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值