好吧所以我刚刚开始使用scala ..遇到了一个很大的奇怪问题.
import Math._
var num:Long=0
num+=600851475
num*=1000
println(num)
该代码工作正常,但以下不编译错误说整数太大.
import Math._
var num:Long=0
num+=600851475000
println(num)
这是怎么回事?scala不能处理12位数字吗?:/
Hoa*_*Tam 14
即使num被声明为Long,编译器也会将600851475000读取为Int,它只能处理[-2 ^  32,2 ^ 32]中的数字[-2 ^ 31,2 ^ 31].将数字写为600851475000L告诉编译器将其视为Long,它将处理最多约18位的数字.
| 归档时间: | 
 | 
| 查看次数: | 7662 次 | 
| 最近记录: |