您如何在 ruby​​ 中编写二进制文字?

Posted

技术标签:

【中文标题】您如何在 ruby​​ 中编写二进制文字?【英文标题】:How do you write a binary literal in ruby? 【发布时间】:2010-09-11 05:10:59 【问题描述】:

大多数语言(包括 Ruby)允许以至少三种基数编写数字文字:十进制、八进制和十六进制。以十进制为基数的数字是常见的事情,并且(大多数)人自然会写数字,96 写为96。以零为前缀的数字通常被解释为基于八进制:96 将被写为0140。基于十六进制的数字通常以0x 为前缀:96 将写为0x60

问题是:我可以在 Ruby 中将数字写成二进制文字吗?怎么样?

【问题讨论】:

【参考方案1】:

使用 0b 前缀

>> 0b100
=> 4

【讨论】:

【参考方案2】:

你可以这样做:

>> easy_to_read_binary = 0b1110_0000_0000_0000
=> 57344
>> easy_to_read_binary.to_s(10)
=> "57344"

【讨论】:

【参考方案3】:

对于文字,前缀是 0b。所以

0b100 #=> 4

请注意,格式化字符串也是如此:

"%b" % 4 #=> "100"

【讨论】:

【参考方案4】:

来自this manual

0b01011

二进制整数

【讨论】:

以上是关于您如何在 ruby​​ 中编写二进制文字?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Ruby 中将字符串或整数转换为二进制?

如何在 Ruby 中将字符串或整数转换为二进制?

如何在 Ruby 中获取随机数

您如何从 Ruby 直接将 SQL 与 MySQL 对话?

如何验证字符串是 Ruby 中正确的十六进制值?

在 Kotlin 中编写一个等于 Int.MIN_VALUE 的十六进制整数文字