我需要在Kotlin中进行for循环:
MyClass
但是我得到这个错误:
for (setNum in 1..(savedExercisesMap[exerciseKey] as HashMap<*, *>)["sets"] as Int){
我认为这不会成为问题。有这种情况发生的原因以及如何解决?
答案 0 :(得分:2)
使用Double
关键字从Int
到as
的铸造将永远不会成功。它们都扩展了Number
类,并且都没有扩展其他类,因此此转换既不是向下转换也不是向上转换。要将Kotlin中的double转换为int,应使用.toInt()
函数。
val aDouble: Double = 2.22222
//val anInt = aDouble as Int // wrong
val anInt = aDouble.toInt() // correct