阅读 110

Kotlin - for 循环

for循环可以对任何提供迭代器(iterator)的对象进行遍历,语法如下:

for(item in collection){
    print(item)
}
复制代码

如果想要通过索引遍历一个数组或者一个list,可以这么做:

for(i in array.indices){
    print(array[i])
}
复制代码

其中,array.indices 持有数组的下标列表。我们也可以使用 withIndex() 来遍历下标对应的元素:

for ((index, value) in array.withIndex()) {
    println("the element at $index is $value");
}
复制代码

另外,范围(Ranges)表达式也可用于循环中:

for (i in 1..10) {
    println(i)
}
复制代码

代码简写如下:

(1..10).forEach {
    print(it);
}
复制代码

其中的操作符形式的 1..10 等价于 1.rangeTo(10) 函数调用,由 in 和 !in 进行连接。

编程实例

编写一个Kotlin程序在屏幕上输出 1! + 2! + 3! + ... + 10! 的和。

fun main() {
    var num = 0;
    (1..10).forEach {
        num += recursion(it)
    }
    print(num);
}

fun recursion(num: Int): Int {
    if (num == 1)
        return 1;
    return num * recursion(num - 1); //4037913
}
复制代码
文章分类
后端
文章标签