我正在尝试制作一个 RPN 计算器。我必须实现自己的 .to_i 和 .to_f 方法。我不能使用 send、eval、Float(str) 或 String(str) 方法。任务完成了,但我仍然想知道如何实现它。
输入:atof("255.25") 作为字符串类型
输出:255.55 作为浮点类型
这是我的atoi代码
ASCII_NUM_START = 48 # ASCII码开头为0
def ascii_to_i(int_as_str)
array_ascii = int_as_str.bytes
转换_arr = array_ascii.map {|ascii| ascii - ASCII_NUM_START } convert_arr.inject
{ |sum, n| 总和 * 10 + n }
结束def ascii_to_f(float_as_str)
???
结尾