Kotlin과 Python이 같이 갖고 있는 키워드중, ‘as’가 있는데 이것 또한 다르게 쓰인다. Kotlin Kotlin에서 ‘as’는 명시적 캐스팅(형변환) 연산자이다. 공식 문서 참조. 문서에 따르면, 이경우 형변환에 실패했을 때, exception이 발생한다. 그래서 Unsafe cast operator라고 한다. 반면에, ‘as?’를 사용하면 형변환 실패시 null을 반환한다. 그래서 Safe cast operator라고 부른다. Python Python에서 as 는 alias를 의미한다. module import와 리소스…
[태그:] keyword
Kotlin vs Python : ‘not’ keyword
코틀린하고 파이썬을 같이 공부하면서 차이점을 비교하는건 흥미롭다. 근데, 이게 시간이 지날수록 더욱 헷갈리기 시작한다. 그래서 짧지만 생각날 때마다 기록해 두려고. 이번 주제는 ‘not’. Kotlin 일반적인 비교연산자에 ‘같지 않다’는 둘 다 동일하게 ‘!=’을 쓴다. Kotlin에서는 이와 동일하게, ‘not’의 의미로 ‘!'(exclamation mark)를 쓴다. 위의 예제와 같은식이다. ‘not’은 Kotlin 키워드에 존재하지 않는다. operator를 overloading 할 때만 다음과 같이…
Kotlin과 Python에서 ‘is’ 키워드의 다른 사용
python에서 ‘is’ 키워드는 ‘==’와 비교될 수 있는데, ‘==’가 값이 같은지 검사한다면, ‘is’는 어떤 오브젝트를 참조하는지 비교한다. 다음의 stack overflow질문을 참고. https://stackoverflow.com/questions/132988/is-there-a-difference-between-and-is Kotlin에도 ‘is’ 키워드가 있지만, 의미는 전혀 다르다. Kotlin에는 ‘is’, ‘as’ 키워드가 있으며, ‘is’는 타입체크를 위해, ‘as’는 타입 캐스팅을 위해 존재한다. 다음의 공식 문서 참고. https://kotlinlang.org/docs/reference/typecasts.html 그러니까 Kotlin의 ‘is’는 python의 isinstance()에 해당한다. 이름이 같다고 헷갈림…