解释Kotlin for循环的示例代码

166 阅读1分钟

Kotlin中的for 循环与Java等传统编程语言中的for 循环的工作方式有些不同。

例如,在Java中,for 循环是由以下3条语句组合而成:

for (int i = 0; i < 5; i++) {
System.out.println(i);
}
/*
Output:
0
1
2
3
4
*/

但是Kotlin中的for 循环并不像Java中那样有3条语句的部分。

相反,Kotlin的for 循环允许你使用一个简单的for ... in 语法来迭代许多东西。

下面是将上述同样的Java循环重构为Kotlin代码:

for (i in 0..4) {
println(i)
}
/*
Output:
0
1
2
3
4
*/

上面的代码是一个有效的Kotlinfor 循环。变量i ,用于遍历04 之间的数字范围,并将数字打印到控制台。

in 操作符是Kotlin中的神奇之处。它允许你在任何允许迭代的地方进行循环。

在另一个例子中,你可以循环通过一个String 的值,如下图所示:

var myString = "Hello!"
for (i in myString) {
println(i)
}
/*
Output:
H
e
l
l
o
!
*/

你也可以用同样的语法在任何数组类型中循环。下面是一个在一个Int 数组上循环的例子:

val numberArr: Array<Int> = arrayOf(10, 20, 30)
for (i in numberArr){
println(i)
}
/*
Output:
10
20
30
*/

而且你还可以循环浏览存储在数组的indices 属性中的索引。下面是在一个String 数组上循环的另一个例子:

val nameArr: Array<String> = arrayOf("Jack", "John", "Dan" )
for (i in nameArr.indices){
println("The value at index $i is ${nameArr[i]}")
}
/*
Output:
The value at index 0 is Jack
The value at index 1 is John
The value at index 2 is Dan
*/

总结

总结一下,Kotlin只有一种有效的for 循环的语法,那就是for ... in 循环。

Kotlin中的for 循环可以用来循环任何提供迭代器的东西:

  • 一个数字的范围
  • 一个String 的值
  • 一个Array 对象
  • 一个HashMap 对象

但请记住,一些对象,如Array ,也有 forEach() 方法,所以你可能想使用它而不是for 循环。

当你怀疑Kotlin的for 循环是否可以遍历一个对象时,只要试着写一下语句。

如果Kotlin没有抱怨,那就意味着你可以遍历它😉。

在学习Kotlinfor 循环方面做得很好!👍