为什么我在添加字符时得到一个数字?
Why do I get a number when I add chars?
我曾经决定将两个字符加在一起,它给了我一个数字。这是代码:
class Main {
public static void main(String[] args) {
System.out.println('a'+'b');
}
}
输出:195
.
找了很多地方,还是想不通为什么char + char = int
。有人可以给我解释一下吗?
注意:这不是重复的!!另一个问题是询问添加的字符的数据类型。这个问题问为什么会这样。这些是不同答案的不同问题!
您正在添加它们的 ASCII 值:
'a'+'b' = 97+98 = 195
此代码将它们隐式转换为 String
:
System.out.println("" + 'a' + 'b'); //ab
并且此代码转换为 double
:
System.out.println(.8 + 'a' + 'b'); //195.8
如果你想连接,试试这个:
System.out.println("a"+"b");
我曾经决定将两个字符加在一起,它给了我一个数字。这是代码:
class Main {
public static void main(String[] args) {
System.out.println('a'+'b');
}
}
输出:195
.
找了很多地方,还是想不通为什么char + char = int
。有人可以给我解释一下吗?
注意:这不是重复的!!另一个问题是询问添加的字符的数据类型。这个问题问为什么会这样。这些是不同答案的不同问题!
您正在添加它们的 ASCII 值:
'a'+'b' = 97+98 = 195
此代码将它们隐式转换为 String
:
System.out.println("" + 'a' + 'b'); //ab
并且此代码转换为 double
:
System.out.println(.8 + 'a' + 'b'); //195.8
如果你想连接,试试这个:
System.out.println("a"+"b");