Java和Kotlin for循环语法之间的区别?

时间:2018-03-09 05:23:37

标签: android-studio for-loop kotlin

我最近开始学习Kotlin,我注意到的一件事是Kotlin的for循环语法与传统的for循环语法不同,对我来说有点令人困惑......我试图在google上搜索但是没有得到我的答案。

我如何复制以下Java for循环?

for (int i = 0; i <= 100; i++) {
  System.out.println(i);
}

2 个答案:

答案 0 :(得分:2)

这是一个Java for循环迭代100次:

for (int i = 0; i <= 100; i++) {
  System.out.println(i);
}

这是Kotlin的等价物:

for (i in 0..100) {
  println(i)
}

这是一个Java for循环,它将遍历列表:

for (int i = 0; i < list.size(); i++) {
  Object item = list.get(i);

  // Do something with item
}

Kotlin等效物:

for (i in list.indices) {
  val item = list[i]

  // Do something with item
}

这是另一个用于迭代列表的Kotlin等价物:

for (i in 0 until list.size) {
  val item = list[i]

  // Do something with item
}

Java for-each循环:

for (Object item : list) {
  // Do something with item
}

Kotlin for-each循环:

for (item in list) {
  // Do something with item
}

答案 1 :(得分:0)

val scanner = Scanner(System.`in`)

var nos = Array<Int>(5) { 0 }

for (i in 1..3) {
    nos[i] = scanner.nextInt()
}

println("Given values $nos")

在这里,您可以看到i in 1..3并且您不需要声明var i:Int = 1,因为它将在循环中为您声明。在这个问题上你也不需要循环内的i = i + 1。