-
💡 [Kotlin] 예제를 통해 보는 기본 문법2 - 함수 표현식, 기본 입출력, split(), map(), if-else, 삼항연산자| 프로그래밍 분야/Kotlin 2021. 7. 23. 23:04
Hello World! 출력하기 (BOJ 2557)
html닫기fun main() = print("Hello World!")
- 한 줄짜리 함수는 중괄호{} 를 생략하고 등호= 를 통해 표현할 수 있습니다.
- 이 때 함수의 리턴 타입(return type)과 우변의 리턴 타입은 같아야 합니다.
- 함수의 리턴 타입을 명시하지 않을 시, 우변의 리턴 타입이 자동으로 캐스팅됩니다.
예 ) fun func() = 3
다음과 동일) fun func():Int { return 3 } - 기본 콘솔 출력 함수에는 print()와 println()이 있으며, 동작은 동일하나 println()은 마지막에 개행(줄바꿈)이 추가됩니다.
알람 시계 설정 (BOJ 2884)
html닫기fun main() { val input = readLine()!!.split(" ").map { it.toInt() } var h:Int = 0 var m:Int = 0 if (input[1] < 45) { if (input[0] == 0) h = 23 else h = input[0] - 1 m = input[1] + 15 } else { h = input[0] m = input[1] - 45 } print("$h $m") }
- "시간 분"을 콘솔에 입력하면, 24H 기준 시각으로 45분 이전의 시각이 출력되는 문제
- readLine() 함수는 기본 입력 함수로, 리턴 타입은 String?입니다. 즉, null 혹은 String을 리턴합니다.
- 콘솔 창의 엔터(개행)을 기준으로 문자열을 입력받으며, 입력값이 없을 시, 혹은 file의 끝에 도달하면 null을 리턴하게 됩니다.
- split함수는 kotlin.text라는 패키지의 함수로, 문자열을 특정 문자열(delimiters)로 잘라서 List<String>을 반환합니다.
- map함수는 이름과 다르게, 객체의 각 iterable의 값을 변경하여 새로운 List를 반환합니다.
- Kotlin에서는 삼항연산자를 지원하지 않으며, if - else 문을 활용할 수 있습니다.