类型转换
本课属于 Coddy Kotlin 学习旅程的“基础知识”单元。第 38 课,共 93 课。
由于 readLine() 返回的是可空字符串(输入结束时为 null),因此在需要处理数字时,你需要转换输入。Kotlin 提供了转换函数,可以将字符串转换为其他类型。
要将字符串转换为整数,请使用 toInt():
fun main() {
val input = readLine()!!
val number = input.toInt()
println(number + 10)
}如果用户输入 "5",程序会将其转换为整数 5,然后加上 10,得到 15。如果不进行转换,"5" + 10 会拼接文本并得到 "510"。先转换再进行数值相加。
对于小数,请使用 toDouble():
fun main() {
val price = readLine()!!.toDouble()
println("With tax: ${price * 1.1}")
}你可以直接在 readLine()!! 后链接转换操作,让代码更简洁。其他实用的转换方法包括用于大整数的 toLong() 和用于布尔值的 toBoolean()。
这些转换假设输入有效。如果有人在你预期输入数字时输入“hello”,程序就会崩溃。你将在课程后面学习如何处理这类错误。
挑战
简单编写一个函数 calculateFutureAge,它接收字符串类型的 currentAge 和 yearsToAdd,并以整数形式返回未来的年龄。
将两个字符串参数都转换为整数,将它们相加,然后返回结果。
参数:
currentAge(String):以字符串表示的当前年龄(例如,"25")yearsToAdd(String):以字符串表示的要增加的年数(例如,"10")
返回值:两个值的和,类型为整数(Int)
亲手试试
fun calculateFutureAge(currentAge: String, yearsToAdd: String): Int {
// 在这里编写代码
}
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: Kotlin 在线编辑器