Как сделать кастинг в Scala? Например, предположим, что у меня val myDouble = 25.7 val myInt = 5 Как мне сделать что-то вроде val divide = (Int) (myDouble / myInt) Ответ 1 Вы можете сделать (myDouble/myInt).toInt. Вы также можете сделать toDouble, toLong и toFloat. Ответ 2 Мой предпочтительный способ - добавить метод округления, чтобы уменьшить потенциальный сюрприз в поведении конверсии: val divide = (myDouble/myInt).ceil.toInt или val divide = (myDouble/myInt).floor.toInt Ответ 3 или вы могли бы сделать... scala> val myDouble = 25.7 myDouble: Double = 25.7 scala> val myInt = 5 myInt: Int = 5 scala> val divide = (myDouble / myInt).asInstanceOf[Int] divide: Int = 5
Ответ 1 Вы можете сделать (myDouble/myInt).toInt. Вы также можете сделать toDouble, toLong и toFloat.
Ответ 2 Мой предпочтительный способ - добавить метод округления, чтобы уменьшить потенциальный сюрприз в поведении конверсии: val divide = (myDouble/myInt).ceil.toInt или val divide = (myDouble/myInt).floor.toInt
Ответ 3 или вы могли бы сделать... scala> val myDouble = 25.7 myDouble: Double = 25.7 scala> val myInt = 5 myInt: Int = 5 scala> val divide = (myDouble / myInt).asInstanceOf[Int] divide: Int = 5