【发布时间】:2018-11-01 18:52:12
【问题描述】:
请考虑这段 Java 代码。它有效,但我试图了解它的作用。
char str = 'foo'
long prime = 503;
long hash = 0;
hash = prime + str.charAt(1);
我很困惑,因为这是不同数据类型的数学加法。如果我认为字符被转换为它的 ASCII 值是为了这个数学运算的目的,我会是正确的吗?
谢谢!
【问题讨论】:
-
“如果我认为字符被转换为它的 ASCII 值是为了这个数学运算的目的,我会是正确的吗?” char 是数值数据类型,没有转换。
-
该代码无法编译。
str必须是字符串,而不是char -
您的第一行
char str = 'foo';没有意义。可能你的意思是String str = "foo"; -
@DyZ 这不是那个问题的重复:这里没有字符串连接