首页  >  文章  >  Java  >  为什么我的 Long 值会抛出“超出范围”错误?

为什么我的 Long 值会抛出“超出范围”错误?

DDD
DDD原创
2024-10-31 03:33:01162浏览

Why Does My Long Value Throw an

长数据类型之谜:解开“超出范围”错误

在 Java 中使用数据类型时,它是遵守各自的价值范围至关重要。尤其是 Long,其范围令人印象深刻,从 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807。但是,如果不遵循正确的语法,可能会出现令人困惑的错误。

如代码片段所示,尝试将值 9223372036854775807 分配给名为 testLong 的 long 变量。然而,编译器令人震惊地反驳了以下消息:“int 类型的文字 9223372036854775807 超出范围。”

这个不协调的错误源于编译器错误地将文字解释为 int 数据类型,该数据类型具有值范围要小得多。为了纠正这个误解,需要进行简单的调整。在文字末尾附加一个大写的 L 将指示编译器将其视为 long:

long value = 9223372036854775807L;

通过合并这种微妙的调整,分配的值无缝地落在 long 数据类型的允许范围内。请记住,缺少此后缀会欺骗编译器将文字错误地识别为 int,从而导致可怕的“超出范围”错误。

以上是为什么我的 Long 值会抛出“超出范围”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn