gpt4 book ai didi

Java Primitives 范围计算

转载 作者:IT老高 更新时间:2023-10-28 13:53:39 26 4
gpt4 key购买 nike

在Java中我们声明

short number=1024*1024*1024; 

它会给出编译时错误但是

short number=1024 * 1024 * 1024 * 1024;

编译得很好。为什么会这样?

最佳答案

在这种情况下,编译器将评估计算(因为它只包含常量)并尝试将结果分配给变量。此计算使用 int 类型完成,并且仅在分配时转换为 short,如果可能的话。

在您的情况下,第一个计算太大而无法放入 short (1073741824)。第二个将溢出 int 并最终在 short 支持的范围内(0)。所以在这种情况下分配是有效的。

请注意,您可能永远不想在代码中依赖这些东西。

关于Java Primitives 范围计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24772953/

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