首页 > 解决方案 > Ruby .to_i 没有按预期返回完整的整数

问题描述

我的红宝石命令是,

"980,323,344.00".to_i

为什么它返回 980 而不是 980323344?

标签: ruby

解决方案


你可以通过这样做来实现它:

"980,323,344.00".delete(',').to_i

此处解释了您的方法调用to_i未按预期返回的原因,并引用该方法:

返回将 str 中的前导字符解释为整数基基数(2 到 36 之间)的结果。超过有效数字末尾的无关字符将被忽略。

在您的情况下,无关字符将是以逗号字符结尾,您看到被退回980的原因980


推荐阅读