当前位置: 首页 > 面试题库 >

浮点文字中的前缀“ 0”是什么意思?

阎智
2023-03-14
问题内容

在整数文字中使用“ 0”(零)作为前缀会将其基数更改为八进制。这就是为什么

System.out.println(010);

将打印8。但是使用“ F”作为后缀

System.out.println(010F);

将使其失去八进制基数(返回十进制)并进行打印10.0

有什么区别010F10F?使用浮点运算时,“ 0”前缀有任何含义吗?


问题答案:

来自Java语言规范,关于浮点文字

FloatingPointLiteral:

  • DecimalFloatingPointLiteral
  • 十六进制浮点数

DecimalFloatingPointLiteral:

  • 数字 。[数字] [指数部分] [FloatTypeSuffix]
  • 。数字[ExponentPart] [FloatTypeSuffix]
  • 数字ExponentPart [FloatTypeSuffix]
  • 数字[ExponentPart] FloatTypeSuffix

哪里 Digits

位数:

  • 数字
  • 数字 [DigitsAndUnderscores] 数字

数字:

  • 0
  • 非零数字

数字和下划线:

  • DigitOrUnderscore {DigitOrUnderscore}

DigitOrUndercore:

  • 数字
  • _

下划线:

  • _ {_}

0浮点字面量可以有任意多个前导。

我在JLS中找不到任何可以解释为什么允许这样做的内容,但是我可以想象它简化了解析过程。



 类似资料:
  • 医生说, 例如,应用程序在一个bucket中的每个前缀每秒至少可以实现3500个PUT/COPY/POST/DELETE和5500个GET/HEAD请求。一个bucket中前缀的数量没有限制。您可以通过并行化读取来提高读写性能。例如,如果在Amazon S3存储桶中创建10个前缀来并行读取,则可以将读取性能扩展到每秒55000个读取请求。 但是,它没有明确提到前缀的概念。 例如, 假设我有3个文件

  • 问题内容: 在python源代码中,我偶然发现在类似如下的字符串之前有一个小b: 我知道表示unicode字符串的前缀和原始字符串文字的前缀。 它看起来像一个没有任何前缀的纯字符串,它代表什么?它在哪种源代码中有用? 问题答案: 这是Python3 bytes 文字。在Python 2.5和更早版本中,此前缀不存在(它等效于2.x的纯字符串,而3.x的纯字符串等效u于2.x中带有前缀的文字)。在P

  • 在我Linux的主文件夹中,我有几个配置文件,文件扩展名为“rc”: 这些名字中的“rc”是什么意思?

  • 问题内容: login 我已经看过很多次了,但是我不知道那是什么意思。 问题答案: 运算符计算给定表达式,然后返回。 操作者经常被用来仅获取原始值,通常使用“ ”(这是相当于“ ”)。在这些情况下, 可以改用全局变量(假设尚未将其分配给非默认值)。 这里提供了一个解释:operator。 您想要通过链接执行此操作的原因是,通常,URL会将浏览器重定向到评估该JavaScript结果的纯文本版本。但

  • 问题内容: 在Angular Component Router文档中,我偶然遇到了一个从未见过的npm命令,我不知道发生了什么: 是什么意思? 整个字符串是包名吗?但是当我在npmjs.com上使用搜索时,我没有找到该软件包。而且,命令行搜索也不会返回任何此类包: 那么npm中的某种前缀机制呢?以及它如何运作? 问题答案: 这是NPM的一项新功能,称为“作用域软件包”,可有效地使NPM软件包具有名

  • 问题内容: 当我在python中输入前面带有0的小整数时,它们给出了奇怪的结果。为什么是这样? 注意:Python版本2.7.3我已经在Python 3.0中进行了测试,显然现在这是一个错误。因此,这是特定于版本的。 编辑:它们显然仍然是整数: 问题答案: 这些是以8为底的数字(八进制数字)。一些例子: Python 2(旧格式) 注意:这些形式仅适用于。 等于 等于 等于 Python 3(新格