Java eclipse中的long和int大小相同吗?
我不知道这是否是一个特定于eclipse的问题,但每当我声明一个long并尝试在其中输入一个>2^32的值时,就会抱怨“int类型的文本XXXXXX超出范围”Java eclipse中的long和int大小相同吗?,java,Java,我不知道这是否是一个特定于eclipse的问题,但每当我声明一个long并尝试在其中输入一个>2^32的值时,就会抱怨“int类型的文本XXXXXX超出范围” 我已经试过直接选长,但似乎没有任何效果。我在这里遗漏了什么?尝试创建long常量:123456789123l(最后注意字母l) 看看这个。不要对IDE上瘾 所以没有歧义,最好只使用大写字母“L”。稍微不同。它处理从int(基元)到Long(类类型)的隐式强制。上面的问题是,一些数字文本(比如123456789123)永远都是无效的,因为它
我已经试过直接选长,但似乎没有任何效果。我在这里遗漏了什么?尝试创建long常量:
123456789123l
(最后注意字母l
)
看看这个。不要对IDE上瘾 所以没有歧义,最好只使用大写字母“L”。稍微不同。它处理从int(基元)到Long(类类型)的隐式强制。上面的问题是,一些数字文本(比如123456789123)永远都是无效的,因为它们超出了int的范围。Java(与C#不同)不会将数字文本从int“向上提升”到long。只想展示如何在末尾“追加”L。同样的错误,我想是因为我的疏忽。p、 (我不知道C:)
long l = 123456789123; // error, constant `123456789123` has type int
long l1 = 123456789123l; // will work
long l2 = 123456789123L; // will work too