在Kotlin编程语言中循环

在我的科特林代码,我得到类型不匹配(推断类型是INT,但布尔是预期的)错误。

fun main(args: Array<String>) { var i = args.size while (i--){ println(args[i]) } } 

你必须提供一个布尔值作为while的参数。 在Kotlin中没有IntBoolean自动转换。

所以你不能做while(i--) ,但是你可以,例如, while(i-- != 0)while(i-- > 0)

Kotlin while循环手册

 while (x > 0) { x-- } do { val y = retrieveData() } while (y != null) // y is visible here! 

而期望布尔(真/假),你给一个整数(i-1)。 正确的代码可以是:

 fun main(args: Array<String>) { var i = args.size while (i>=0){ println(args[i]) i-- } }