gpt4 book ai didi

ruby - to_i 参数 base 实际上做了什么?

转载 作者:数据小太阳 更新时间:2023-10-29 08:17:24 27 4
gpt4 key购买 nike

to_i String#method 的基本参数实际上是做什么的?

一些例子:

  • "2".to_i(2) == 0

  • "2".to_i(36) == 2

  • "2".to_i(4) == 2

  • "ff".to_i(36) == 555

  • "ff".to_i(16) == 255

在二进制上:

  • "1000".to_i(2) == 8

  • "1000".to_i(16) == 4096

文档说:

to_i(base=10) → integer

Returns the result of interpreting leading characters in str as an integer base base (between 2 and 36). Extraneous characters past the end of a valid number are ignored. If there is not a valid number at the start of str, 0 is returned. This method never raises an exception when base is valid.

但是,这个解释我还是不清楚,请哪位大侠解释一下。谢谢。

最佳答案

此参数指定接收方代表的数字系统。在计算机领域,您会遇到三种常见的数字系统。它们是:

  • 十六进制(以 16 为基数)
  • 八进制(以 8 为底)
  • 二进制(基数 2)

您可以将这些视为开始新“地点”之前循环经过的“字符”数。例如,一旦你从 0 到 9,你就会从 0 重新开始。

当您要求对象将自身转换为数字时,它必须知道自己当前代表的是什么。一旦它知道这一点,根据您的指定,它就可以进行数学运算来转换数字。了解这一点的重要性的一个例子是字符串“10”。

  • 十进制“10”= 10(十进制)
  • 二进制“10”= 2(十进制)
  • 十六进制“10”= 16(十进制)
  • 八进制“10”= 8(十进制)

关于ruby - to_i 参数 base 实际上做了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21371596/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com