首页 > 解决方案 > 求解数学最后 str + 1 返回 50

问题描述

您好,我正在尝试对此进行数学运算以获得结果 = 2

string str = "1005480701";
Console.WriteLine(str.Last() + 1);

它应该是 2 但结果是 50 有人能解释一下为什么会这样吗

标签: c#

解决方案


string.Last()返回char '1'. 的 UTF-16 代码'1'49,如果你添加149,你会得到50.

您必须将字符转换为它所代表的数字,例如使用int.Parse().

...
Console.WriteLine(int.Parse(str.Last().ToString()) + 1);
...

推荐阅读