苦闷的围巾 · CVE-2020-14386 —— ...· 2 月前 · |
性感的香蕉 · 【运维】dockerfile 中的COPY ...· 3 月前 · |
会开车的烈马 · Typescript匿名类-腾讯云开发者社区 ...· 4 月前 · |
睿智的伤疤 · 几个好用的hexo主题-CSDN博客· 7 月前 · |
豁达的板栗 · 北京信息科学与技术国家研究中心2023年度开 ...· 1 年前 · |
我正试着把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