![]() |
谈吐大方的电池 · java.net.URISyntaxExce ...· 1 年前 · |
![]() |
可爱的乌冬面 · 生成Azure Repos Git 存储库 ...· 1 年前 · |
![]() |
直爽的匕首 · AVFoundation 官方文档翻译 - ...· 1 年前 · |
![]() |
温柔的砖头 · 从现实世界的角度去理解计算机领域的知识-阿里 ...· 2 年前 · |
我正试着把4294967295分给长。即(2^32-1) java(netbeans)给出以下错误消息“整数太大”
事实上,我试图找出int可以处理的最大数字(手动处理),结果发现它是2147483647 (当然,很明显是2^31-1)。
但令人惊讶的是,我发现即使是长的类型也不能处理比这个更大的数字。int和long之间没有任何区别吗?java说long是64位
我是不是遗漏了什么?
发布于 2014-10-15 07:17:46
问题是您使用4294967295作为
int
文本,但它不是一个有效的
int
值。您希望它是
long
文本,所以需要在其上添加
L
后缀。这很好:
long x = 4294967295L;
来自 JLS第3.10.1节
如果整数以ASCII字母L或l(Ell)作为后缀,则为long类型;否则为int类型(§4.2.1)。
发布于 2014-10-15 07:19:15
使用较低的
l
来向编译器显示它是一个长值。
long l = 4294967295l ;
https://stackoverflow.com/questions/26376627
复制相似问题
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2024 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287