336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
Any 그리고 Any? 대입에 대해서
코틀린의 최상위 타입은 Any이다. 코틀린에서 타입을 정의할 때 null 안전을 위해 대입이 가능한 프로퍼티에는 명시적으로 ? 를 추가해야 한다. 여기서 궁금한 점은 Any 타입의 프로퍼티는 Any타입에 대입할수 있을까 ? 반대로 Any? 타입으로 선언한 프로퍼티는 Any타입에 대해서 대입할 수 있을까 ?
결과적으로 Any 타입은 Any? 타입에 대입할 수 있지만, 반대로 Any 타입은 Any 타입에 대입할 수 없다.
Any ? <- Any 는 대입 할 수 있다.
Any <- Any? 는 대입할 수 없다.
1 2 3 4 5 6 7 | fun main(args: Array<String>) { val anyValue1: Any = "ktko" val anyValue2: Any? = anyValue1 //대입이 가능하다! val anyValue3: Any? = "ktko" val anyValue4: Any = anyValue3 //Type mismatch. Required: Any Found Any? } |
Any 뿐만아니라 Int 타입에 Int?를 대입하여도 컴파일 에러가 발생한다.
'Kotlin 코틀린' 카테고리의 다른 글
코틀린 변수와 자바 변수의 차이점 (0) | 2019.02.09 |
---|---|
코틀린 변수 함수 정리를 해보자 (0) | 2019.02.06 |
코틀린의 클래스, 객체, 인터페이스 (0) | 2019.01.08 |
코틀린의 함수 (0) | 2019.01.04 |
코틀린 기본 문법 정리 (0) | 2019.01.04 |