如何使用for循环在kotlin中创建它?
for (double i = 0; i < 10.0; i += 0.25) {
System.out.println("value is:" + i);
}
答案 0 :(得分:3)
您应该使用Intellij插件转换Kotlin的Java代码。它非常整洁(除非你有使用lambdas的复杂代码)这是它为你提出的问题转换为:
var i = 0.0
while (i < 10.0) {
println("value is:" + i)
i += 0.25
}
答案 1 :(得分:2)
这是与for循环相当的kotlin代码。
var i = 0.0
while (i < 10.0)
{
println("value is:" + i)
i += 1.0
}
答案 2 :(得分:1)
仅Kotlin for循环支持迭代数组。请参考https://kotlinlang.org/docs/reference/control-flow.html
它可以以不同的方式实现
var length:Double = 10.0
var increment:Double = 0.25
for (index in Array((length/increment).toInt(), { i -> (i * increment) }))
println(index)
答案 3 :(得分:0)
我不确定该语法是否是新语法,但是可以使用自然数来迭代这样的值。
(0..(10*4)).map {
it / 4.0 as Double
}.forEach {
println(it)
}
我避免在IEEE 754浮点数上进行迭代,因为这可能会导致错误。在这种情况下可能会很好,但是根据环境,上下文和语言的不同,情况可能并非如此。最好避免使用浮点数,除非期望数字具有任意精度,即使用实数或连续性。
如果不需要存储结果,也可以在for循环中使用此语法。但是,如果要保持不变性,则应在大多数情况下避免for循环。
for (i in 0..10) {
println("Project Loom is a lie! $i")
}