728x90
만약 코틀린을 활용하여
사용자가 원하는 모델과 색상을 이용하여 저장하는 함수를 개발할 때
색상을 바꾸지 않고, 대표 색상으로 주문하는 고객에는 "default"라는 문자열을 전달하여 처리하기로 하였습니다.
이를 코드로 작성하면
fun main() {
orderCar(Model(), "default")
}
fun orderCar(model: Model, color: String) {
add(model, color)
}
이런 식으로 실제 호출하는 부분에서 String 형태를 넣어줄 수도 있지만
fun orderCar(model: Model) {
add(model, "default")
}
fun orderCar(model: Model, color: String) {
add(model, color)
}
조금 더 코드 사용의 편의성을 위해
해당 코드와 같이
위와 같이 오버로딩을 이용하여 처리할 수도 있습니다.
하지만 이는 경우의 수가 많아질수록 번거로워진다는 단점이 있습니다.
코틀린에서는 이를 조금 더 편리하게 해결하기 위해 매개 변수에 기본값 기능을 제공합니다.
매개변수에 기본 값 넘기기
방법은 매우 간단하다.
기본값으로 들어가야 할 매개변수에 대입 연산자를 사용하면 된다.
fun main() {
orderCar(Model())
}
fun orderCar(model: Model, color: String = "default") {
add(model, color)
}
이를 코드로 작성한다면 위와 같이 model 하나만 인자로 넘겨줘도 함수를 사용하는 것이 가능하다.
저 함수는 만약 model과 color의 값이 모두 들어온다면 해당 값이 적용되고,
model만 들어오면 color에는 "default"라는 값이 자동으로 전달된다.
물론 이를 이용하면 모든 매개변수의 기본값을 지정하여 아무런 값을 주지 않아도 사용하는 것이 가능하다.
728x90
'Kotlin' 카테고리의 다른 글
매개변수의 개수가 고정되지 않은 함수 사용하기 - [Doit! 코틀린 프로그래밍] (0) | 2023.01.25 |
---|---|
매개변수 이름으로 호출하기 (0) | 2023.01.24 |
예외를 활용해 코드에 제한 걸기 (0) | 2023.01.24 |
코틀린에서 타입 확인하기 (0) | 2023.01.22 |
코틀린의 스마트 캐스트(Smart cast)란? (0) | 2023.01.21 |