코틀린 연산자 오버로딩
-
[코틀린] 연산자 오버로딩코틀린 2022. 3. 20. 00:05
1. 연산자 오버로딩 코틀린에서는 개발자가 정의한 클래스에도 +, * 연산자를 정의해 줄 수 있다. 클래스 내에 RationalNumber를 인자로 받는 operator fun plus라는 키워드로 함수를 정의하면 이 클래스들 간의 + 연산이 정의된다. 아래는 RationalNumber 클래스 간의 + 와 RationalNumber 클래스와 정수 간의 + 를 정의한 것이다. class RationalNumber( val numerator: Int, val denominator: Int ) { operator fun plus(other: RationalNumber): RationalNumber { return RationalNumber( this.numerator * other.denominator + o..