표준 입력 읽기
// 사용자 입력을 변수에 저장합니다. 예: Hi there!
val myInput = readln()
println(myInput)
// Hi there!
// 변수에 저장하지 않고 사용자 입력을 출력합니다. 예: Hi, Kotlin!
println(readln())
// Hi, Kotlin!
Kotlin
복사
•
readln() 함수를 사용하여 표준 입력에서 데이터를 읽을 수 있다.
•
이 함수는 전체 줄을 문자열로 읽는다.
// 문자열을 정수 값으로 변환합니다. 예: 12
val myNumber = readln().toInt()
println(myNumber)
// 12
// 문자열을 실수 값으로 변환합니다. 예: 345
val myDouble = readln().toDouble()
println(myDouble)
// 345.0
// 문자열을 불리언 값으로 변환합니다. 예: true
val myBoolean = readln().toBoolean()
println(myBoolean)
// true
Kotlin
복사
•
문자열 외의 데이터 타입을 처리하려면 .toInt(), toLong(), toDouble(), toFloat() 또는 toBoolean() 같은 변환 함수를 사용할 수 있다.
•
서로 다른 데이터 타입의 여러 입력을 읽고 각 입력을 변수에 저장할 수도 있다.
// 입력을 읽고 공백으로 구분된 요소들을 정수로 변환합니다. 예: 1 2 3
val numbers = readln().split(' ').map { it.toInt() }
println(numbers)
// [1, 2, 3]
// 입력을 읽고 쉼표로 구분된 요소들을 실수로 변환합니다. 예: 4,5,6
val doubles = readln().split(',').map { it.toDouble() }
println(doubles)
// [4.0, 5.0, 6.0]
Kotlin
복사
•
여러 입력 요소가 구분자로 구분되어 있을 경우 .split() 함수를 사용하여 구분자를 지정하고 입력을 나눌 수 있다.
표준 입력 안전하게 처리하기
// 잘못된 입력일 경우 null을 반환합니다. 예: Hello!
val wrongInt = readln().toIntOrNull()
println(wrongInt)
// null
// 유효한 입력을 문자열에서 정수로 변환합니다. 예: 13
val correctInt = readln().toIntOrNull()
println(correctInt)
// 13
Kotlin
복사
•
사용자 입력을 문자열에서 정수로 안전하게 변환하려면 .toIntOrNull() 함수를 사용할 수 있다.
•
이 함수는 변환이 성공하면 정수를 반환하고 입력이 유효하지 않으면 null을 반환한다.
•
readlnOrNull() 함수도 사용자 입력을 안전하게 처리하는데 유용하다.
•
이 함수는 표준 입력에서 읽고 입력의 끝에 도달하면 null을 반환한다.