You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin中Char::digitToInt及::符号的文档查询与用法咨询

问题解答

先修正你代码中的笔误

原代码里的row: String -是输入笔误,正确写法应为row: String ->,修正后的完整代码:

private fun parseInput(input: List<String>): Array<IntArray> =
input.map { row: String ->
    row.map(Char::digitToInt).toIntArray()
}.toTypedArray()

关于Char::digitToInt的细节

  • 这是Kotlin标准库Char类的成员函数,核心作用是把十进制数字字符转换成对应整数,比如'5'调用后返回5,'0'返回0。
  • 仅支持'0'到'9'范围内的字符,传入字母、符号等非数字字符会直接抛出NumberFormatException异常。
  • 还有重载版本digitToInt(radix: Int),可以指定进制(如二进制、十六进制),只要字符在对应进制的合法范围内就能完成转换。

关于::符号的文档说明

Kotlin中的::被称为函数引用,相关描述位于官方文档的「函数与Lambda表达式」板块下的「函数引用」章节:

  • 它的作用是创建一个函数类型的实例,指向已存在的函数(包括顶层函数、类成员函数等)。
  • 你写的Char::digitToInt属于成员函数引用,用来引用Char类的digitToInt成员函数。当把它传给map这类高阶函数时,Kotlin会自动将map遍历到的每个Char对象作为调用digitToInt的接收者,替代了{ it.digitToInt() }的写法,更简洁。

内容的提问来源于stack exchange,提问作者Philippe PONS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 17:55:13