ABOUT ME

나의 공부 기록

Today
Yesterday
Total
  • 😎 Infix Function
    🔖 Kotlin 2024. 12. 30. 15:43

    🤔 Infix Function

    코틀린은 가독성 좋은 코드를 위한 언어로 이를 통해 코드를 더 쉽게 유지 관리할 수 있다.

    • infix 표기법도 이런 기능 중 하나이다.
    💡Infix 표기법
    코틀린은 마침표와 괄호를 사용하지 않고도 일부 함수를 호출할 수 있게 해주며 이를 Infix 메서드라고 한다.

     

    🎯 Infix Function의 목표

       
    가독성 향상  Infix 함수는 코드를 자연어처럼 보이게 해 가독성을 향상
      도메인별 언어(DSL)이나 사람이 읽을 수 있는 형식으로 작업을 표현할때 유용
    보일러 플레이트 줄이기 Infix 표기법을 사용해 보일러 플레이트 코드의 양을 줄일 수 있다.

     

     

    📌 Standard library infix function

       
    to() Pair<A, B> 인스턴스 생성
    and(), or(), xor() 두 피연산자간 논리 연산 수행
    matches() 주어진 정규표현식과 일치하면 true 반환

     

     

    // to() 예시
    val test = mapOf(
      1 to "Android",
      2 to "IOS",
    	3 to "Java",
    )
    
    test.forEach {
        println("result : $it")
    }
    
    --------------------------
    result : 1=Android
    result : 2=IOS
    result : 3=Java

     

    ✋ 사용자 정의 infix 함수 표기법

     

    사용자 정의 infix 함수를 정의하기 위해서는 아래 요구사항을 충족해야한다.

    • 멤버 함수 또는 확장 함수여야 한다.
    • 단일 매개변수를 가져야한다.
    • infix 키워드로 표시해야 한다.

     

    class InfixExample {
        infix fun likes(favorite: String) {
            println("I like $favorite")
        }
    }
    
    fun main() {
        val beomsic = InfixExample()
        // infix 함수 사용
        beomsic likes "Ice cream"
    }
    
    ------------------------
    I like Ice cream
    

     

    📖 Extension Function (확장 함수)

    • 어떤 클래스의 멤버 함수인 것처럼 호출할 수 있지만 해당 클래스의 밖에서 선언된 함수
    • 따로 상속받지 않고 하나의 클래스에 추가적인 메서드를 구현하고 싶을 때 사용하는 함수

     

    📕 참고자료

    Functions | Kotlin

    Infix Functions in Kotlin | Baeldung on Kotlin

    Kotlin Infix function or Infix notation

    '🔖 Kotlin' 카테고리의 다른 글

    👾 MockK와 Mockito  (0) 2025.01.09
    널 안정성  (0) 2024.12.29
    🦥 lateinit 과 lazy  (0) 2024.12.29
    Kotlin Coroutines  (0) 2024.12.28
    Unit / Nothing  (0) 2024.11.25

    댓글

Designed by Tistory.