【发布时间】:2020-05-06 06:02:50
【问题描述】:
有没有一种方法可以在不使用乘法的情况下将字符串转换为整数。 int.Parse() 的实现也使用乘法。我还有其他类似的问题,您可以手动将字符串转换为 int,但这也需要将数字乘以 10。这是我在一次采访中遇到的一个面试问题,我似乎找不到任何答案。
【问题讨论】:
-
带(文本)还是不带(标题)?
-
你能澄清一下吗?你的标题说“不使用”,而你的文字说“有”使用......
-
考虑到问题的其余内容(例如“但这也需要将数字乘以它的底数 10”),标题是正确的。另外,如果允许乘法,那么这是微不足道的,所以问它是没有意义的。
-
this article 建议用位移和加法 (
x<<1 + x<<3) 替换乘以 10,但这仍然是使用乘法的一种方式,因此很难说这是否符合问题... -
for (int i = 0; i < 10; i++) result += number;算不算?