kotlin局部函数,局部扩展函数

局部函数

即定义在另一个函数内部的函数。

局部函数可以访问外部函数(即闭包)的局部变量。

fun dfs(graph: Graph) {
    fun dfs(current: Vertex, visited: MutableSet<Vertex>) {
        if (!visited.add(current)) return
        for (v in current.neighbors)
            dfs(v, visited)
    }

    dfs(graph.vertices[0], HashSet())
}

局部扩展函数

即定义在一个函数内部的扩展函数。

  fun hello() {
        fun Float.dp(): Int {
            return 0
        }

        2f.dp()
    }
原文地址:https://www.cnblogs.com/huyang011/p/14657577.html