gpt4 book ai didi

java - 为什么 Java 整数字面量的默认类型是 int 而不是 long?

转载 作者:搜寻专家 更新时间:2023-10-30 19:43:40 25 4
gpt4 key购买 nike

<分区>

我很困惑为什么 Java 整数文字默认为 int 而不是 long。这似乎引起了不必要的困惑。

首先,它要求程序员在为超过最大 int 大小的 long 赋值时采用特殊语法(将“L”附加到文字中)( 2147483647).

long x = 2147483647; // Compiles
long y = 2147483648; // Does not compile
long z = 2147483648L; // Compiles

其次,在使用Long 包装器类时,程序员必须始终使用long 文字表示法,如this SO question 中所述。 .

Long x = 250; // Does not compile
Long y = 250L; // Compiles

第三,考虑到从 int 文字到“较窄”数据类型(shortbyte)的隐式转换在所有情况下都可以正常工作在某些情况下(据我所知),似乎简单地将所有整型文字设为 long 类型将是显而易见的解决方案……对吧?这不会完全消除这种在特殊情况下将“L”附加到整数文字的奇怪系统的需要吗?

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