Kotlin问题,了解一段代码

时间:2019-05-19 20:44:27

标签: kotlin

我刚刚开始学习编程,但是在理解教程中的一段代码时遇到了问题。谁能解释下面的Kotlin代码做什么?

谢谢

fun f(i:Int, list:MutableList<Int>) : Boolean {
    for (number in list) {
        if (i % number == 0) {
            return false
        }
    }
    return true
}

fun main(args:Array<String>) {
    val result = mutableListOf<Int>()
    for (number in 2..100) {
        if (f(number, result)) {
            result.append(number)
        }   

       print(result.joinToString())
}

2 个答案:

答案 0 :(得分:2)

main方法创建一个新的整数列表。在2到200的循环中,它使用循环的当前编号(编号)和创建的列表调用函数f。

该功能检查移交的号码是否可以除以列表中的任何号码。如果可以分割,则返回false,否则返回true。

如果无法将数字相除,则该数字将存储在列表中。

因此,找到质数是一种简单的算法。该列表存储了到目前为止找到的所有素数。然后该函数检查数字是否可以除以任何质数。

答案 1 :(得分:1)

f(...)检查我是否用列表中的任何数字除-如果是,则返回false。

main(..)循环遍历2..100中的所有数字,并添加不与先前添加到列表中的任何数字相除的数字。

基本上,它将打印2..100之间的所有素数

相关问题