Введите это.
scala> 86400000 * 150
res0: Int = 75098112
scala> val i : Long = 86400000 * 150
i: Long = 75098112
val i = 86400000 * 150.asInstanceOf[Long]
i: Long = 12960000000
val i = 86400000 * 150L
i: Long = 12960000000
Что здесь происходит в мире? Я прыгал с парашютом, и я должен сказать, что это самая опасная вещь, которую я когда-либо видел. Нет компилятора для этого? Очевидно, если бы я подставлял 150 для переменной, которая бы отличалась.
* EDIT *
Это был код, который меня беспокоил.
val oneDay = 86400000
val days150 = oneDay * 150
days150 = 75098112
Это не ошибка Scala или любая ошибка, кроме моей. Меня только что беспокоило.