자바 개발자를 위한 코틀린 입문 에 강의 내용을 정리한 내용이다.
코틀린에서 연산자를 다루는 방법에 대해서 설명한다.
비교 연산자와 동등성, 동일성
Kotlin에서는 동일성에 ===
를 사용, 동등성에 ==
를 호출 ==
를 사용하면 간접적으로 equals를 호출해준다.
1 2 3 4 5
| val person1 = Person(10) val person2 = person1 val person3 = Person(10)
println(person1 == person3)
|
논리연산자
Java 처럼 Lazy 연산을 수행
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| fun main() { if (fun1() || fun2()) { println("본문") } }
fun fun1(): Boolean { println("fun 1") return true }
fun fun2(): Boolean { println("fun 2") return false }
---- 결과 fun1 본문
|
특이한 연산자
in / !in
컬렉션이나 범위에 포함되어 있다, 포함되어 있지 않다
a..b
a부터 b까지의 범위 객체를 생성한다.
a[i]
a의 특정 index i에 b를 넣는다.
연산자 오버로딩
Money.kt1 2 3 4 5 6 7 8 9
| data class Money( val amount: Long ) {
operator fun plus(other: Money): Money { return Money(this.amount + other.amount) }
}
|
1 2 3 4 5 6 7 8 9
| fun main() {
val money1 = Money(1_000L) val money2 = Money(2_000L)
Money(amount=3000)
}
|
소스코드
참조