【发布时间】:2018-08-09 14:33:26
【问题描述】:
在 Java 中:
System.out.println('c' + "Hello world" + 1);
给了
cHello world1
但是
System.out.println('c' + 1 + "Hello world");
给予
100Hello world
即 c 被转换为它的 ASCII 字符。Java 对此使用什么规则?谁能告诉我我可以遵循的一组规则来预测输出,因为这对我来说非常混乱。
【问题讨论】:
-
如果你在一个字符串中添加一些东西,它会连接起来。这是
+唯一一次连接。如果将 char 添加到 int,它会以数字形式添加它们。 -
不可能。你可以得到
100,而不是120。 -
嗯,不是 ASCII,而是 UTF-16(它是 Unicode 字符集的几种字符编码之一)。 Java 不使用 ASCII。
标签: java string char int output