[kotlin] 확장 함수를 사용하여 클래스의 기능을 확장하는 예시는 무엇이 있나요?

Kotlin에서는 확장 함수를 사용하여 기존 클래스에 새로운 함수를 추가할 수 있습니다. 이를 통해 기존 클래스의 기능을 확장하고, 코드의 가독성 및 재사용성을 높일 수 있습니다. 아래는 간단한 예시를 통해 확장 함수의 활용 방법을 설명하겠습니다.

1. String 클래스에 확장 함수 추가하기

fun String.customUpperCase(): String {
    return this.toUpperCase().plus(" - Custom UpperCase")
}

위의 코드는 기존의 String 클래스에 customUpperCase라는 확장 함수를 추가한 예시입니다. 이 함수는 문자열을 대문자로 변환한 뒤에 “ - Custom UpperCase”를 덧붙여 반환합니다.

2. 확장 함수 활용하기

fun main() {
    val sampleString = "Hello, World!"
    val result = sampleString.customUpperCase()
    println(result) // 출력 결과: "HELLO, WORLD! - Custom UpperCase"
}

위의 main 함수에서는 확장 함수를 사용하여 기존의 String 객체에 새로운 기능을 추가하고 활용하는 방법을 보여줍니다. customUpperCase 함수를 호출하여 원본 문자열을 변경하지 않고도 원하는 변형을 적용할 수 있습니다.

이와 같이 확장 함수를 사용하면 기존 클래스의 기능을 확장하여 새로운 기능을 추가할 수 있으며, 이는 Kotlin 코드의 모듈화와 가독성 향상에 도움을 줄 수 있습니다.

더 많은 확장 함수에 대한 정보는 Kotlin 공식 문서를 참고하시기 바랍니다.