scala给BigInt赋初值失败?

scala> val x : scala.math.BigInt = 1881676371789154860897069000
<console>:1: error: integer number too large
       val x : scala.math.BigInt = 1881676371789154860897069000
       

使用Scala的解释器给BigInt赋初值失败,为什么BigInt类型却不能赋值超过integer的值?

阅读 3.9k
1 个回答

問題不在BigInt, 是右邊那個字面量無法求值.

scala> 1881676371789154860897069000
<console>:1: error: integer number too large
1881676371789154860897069000

BigInt可以用字符串初始化

scala> BigInt("12345667890087234578023089723457234705892375071881676371789154860897069000")
res0: scala.math.BigInt = 12345667890087234578023089723457234705892375071881676371789154860897069000
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题