我正在尝试将我的字符串变量转换为整数以向其添加值(+1),但是得到的结果是:
1111
实际上,当我将其重新转换为字符串时,我应该总共得到4个。
我究竟做错了什么?
public string str_Val = "1";
void Update () {
if (str_Val != "5") {
str_Val = int.Parse (str_Val + 1).ToString ();
}
}
一切都与操作的优先级有关:
int.Parse (str_Val + 1)
另外,在上述第一加法行发生str_Val + 1
outputing 11
,111
,111
等。
然后解析发生更改"11"
为11
然后到字符串发生更改11
为"11"
因此,将您的代码更改为
str_Val = (int.Parse(str_Val)+1).ToString();
这将首先将字符串转换为int,然后添加两个整数,最后再次将整数转换为字符串。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句