Java to Kotlin (4) - 연산자를 다루는 방법

이동명·2024년 6월 7일
0

kotlin

목록 보기
4/19
post-thumbnail

단항 연산자 / 산술 연산자

Java, Kotlin 완전 동일합니다.

비교 연산자와 동등성, 동일성

Java, Kotlin 사용법은 동일합니다. 하지만 객체를 비교할 때 조금 차이가 있습니다.

아래는 객체비교를 위한 자바 코드 입니다.

이런식으로 compareTo를 이용해 비교를 하였지만 코틀린에서는

이런식으로 이용하고 '>' 부등호 키워드가 Override한 compareTo를 직접 가리키게 됩니다.

또한 동등성과 동일성에 개념에 대해 확인하고 가자면,

동등성(Equality)

  • 두 객체의 값이 같은가?

동일성(Identity)

  • 완전히 동일한 객체인가? 즉 주소가 같은가?

위와 같은 객체 3개가 있을 때

1,2번째는 레퍼런스(주소)가 같기 때문에 '==' 키워드로 동일성을 확인하였고,

2,3번째는 값이 같기 때문에 equals로 값이 동등함을 확인하였다.

하지만 ,

Kotlin에서는 동일성에 === 를 사용, 동등성에 ==를 호출 ==를 사용하면 간접적으로 equals를 호출해준다

논리 연산자 / 코틀린에 있는 특이한 연산자

Java와 완전히 동일합니다. 또한 Java 처럼 Lazy 연산을 수행합니다.

in / !in

  • 컬렉션이나 범위에 포함되어 있다, 포함되어 있지 않다

a..b

  • a부터 b 까지의 범위 객체를 생성한다.

a[i]

  • a에서 특정 Index i로 값을 가져온다

a[i] = b

  • a의 특정 index i에 b를 넣는다

연산자 오버로딩

자바에선 아래의 코드처럼 연산자 오버로딩을 사용하였다.

코틀린에서는 아래의 class를 직접 만들어놓고,

직관적으로 사용이 가능하다. '+' 기호는 plus힘수를 가리키고 있다.


다음 포스팅에선 반복문 제어문 외 등등 코드제어를 비교하면서 포스팅 해보겠습니다.

profile
Web Developer

0개의 댓글