2.5 try, catch, finally - ericbykim/kotlin-in-action GitHub Wiki
fun readNum(reader: BufferedReader): Int? {
try {
val line = reader.readLine()
return Integer.parseInt(line)
}
catch (e: NumberFormatException) {
return null
}
finally {
reader.close()
}
}
fun readNum(reader: BufferedReader) {
val number = try {
Integer.parseInt(reader.readLine())
} catch (e: NumberFormatException) {
return
}
println(number)
}
val reader = BufferedReader(StringReader("not a number"))
readNum(reader) // μ무κ²λ μΆλ ₯λμ§ μλλ€.
fun readNum(reader: BufferedReader) {
val number = try {
Integer.parseInt(reader.readLine())
} catch (e: NumberFormatException) {
null
}
println(number)
}
val reader = BufferedReader(StringReader("not a number"))
readNum(reader) // null μΆλ ₯