Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中将字符串添加到int时会得到什么?_Java - Fatal编程技术网

在Java中将字符串添加到int时会得到什么?

在Java中将字符串添加到int时会得到什么?,java,Java,我正在看我的一些朋友,他现在正在睡觉。我的电脑上没有JDK,我一生中也从未接触过Java。这个表达式的校验和int值是多少 int score = 15; String name = "Me"; String checksum = score + name + "salt"; //do stuff in将转换为字符串,因此校验和的值将为15Mesalt 从基于字符串连接的列表: 如果只有一个操作数表达式是字符串类型,则在运行时对另一个操作数执行字符串转换以生成字符串 in将转换为字符串,因此校

我正在看我的一些朋友,他现在正在睡觉。我的电脑上没有JDK,我一生中也从未接触过Java。这个表达式的校验和int值是多少

int score = 15;
String name = "Me";
String checksum = score + name + "salt";
//do stuff

in将转换为字符串,因此
校验和
的值将为
15Mesalt

从基于字符串连接的列表:

如果只有一个操作数表达式是字符串类型,则在运行时对另一个操作数执行字符串转换以生成字符串


in将转换为字符串,因此
校验和
的值将为
15Mesalt

从基于字符串连接的列表:

如果只有一个操作数表达式是字符串类型,则在运行时对另一个操作数执行字符串转换以生成字符串

这将是“15米萨尔”

它只是将整数作为数字添加到字符串中,没有虚饰,也没有什么特别的东西

应该是“15米萨尔”


它只是将整数作为数字添加到字符串中,没有虚饰,也没有什么特别的东西

您正在字符串中连接int。字符串内串联int转换为字符串

结果将是

15MEsalt

您正在字符串中连接int。字符串内串联int转换为字符串

结果将是

15MEsalt

结果是
15Mesalt
。右边的变量是
String
so
+
运算符与操作数联系。

结果是
15Mesalt
。右变量是
String
,因此
+
运算符与操作数相联系。

无论是通过类型分析确定为表示字符串串联还是数字加法,
+
运算符的任一操作数的类型是String,都是语法上的左关联,然后操作是字符串连接

因此表达式
score+name+“salt”
=“15Mesalt”的结果

下面是另一个场景:

System.out.println(“Hello”+“a”+7)
System.out.println('a'+7+“Hello”)

第一个输出是
Helloa7
,第二个输出是
104Hello
。在第一条语句中,两个
+
运算符都表示字符串串联


但对于第二个,由于+运算符在语法上是左关联的,因此首先计算
'a'+7
。现在它触发java自动类型提升机制,将
'a'
转换为其相应的ASCII值
97
,并将其添加到
7
。因此结果是
104
,这是一个int值。然后计算
104+“Hello”
。由于第二个操作数是字符串,因此
+
运算符现在表示字符串的连接性。因此结果是
104Hello

运算符在语法上是左关联的,无论类型分析确定它是表示字符串串联还是数字相加。如果
+
运算符的任一操作数的类型为字符串,则该操作为字符串串联

因此表达式
score+name+“salt”
=“15Mesalt”的结果

下面是另一个场景:

System.out.println(“Hello”+“a”+7)
System.out.println('a'+7+“Hello”)

第一个输出是
Helloa7
,第二个输出是
104Hello
。在第一条语句中,两个
+
运算符都表示字符串串联


但对于第二个,由于+运算符在语法上是左关联的,因此首先计算
'a'+7
。现在它触发java自动类型提升机制,将
'a'
转换为其相应的ASCII值
97
,并将其添加到
7
。因此结果是
104
,这是一个int值。然后计算
104+“Hello”
。因为第二个操作数是字符串,所以
+
运算符现在表示字符串的连接性。因此结果是
104Hello

好的,谢谢。我就是这么想的,但是哈希函数的输出似乎与此不一致。非常感谢。我得去别的地方看看好的,谢谢。我就是这么想的,但是哈希函数的输出似乎与此不一致。非常感谢。我将不得不去别处查看
字符串校验和..
你确定“我正在查看我的一些朋友的Java,他目前正在睡觉”并不意味着“我正在攻击我朋友睡觉时的Java”?有趣。我的意思正是,你碰巧和我的朋友同名;)幸运的是,我没有任何具有“保护”功能的软件。事实上,我的大部分内容都是开源的向你的朋友表达我的同情,并建议他们寻找更好的朋友(即朋友)呵呵。我只是在测试服务器,看看是否可以将HTML插入到高分列表中。
字符串校验和..
你确定“我正在查看我的一些朋友的Java,而他目前正在睡觉。”这实际上并不意味着“我正在攻击我朋友睡觉时的Java”?很有趣。我的意思正是,你碰巧和我的朋友同名;)幸运的是,我没有任何具有“保护”功能的软件。事实上,我的大部分内容都是开源的向你的朋友表达我的同情,并建议他们寻找更好的朋友(即朋友)呵呵。我只是在测试服务器,看看是否可以将HTML插入到高分列表中。