공부하다죽어라
[Kotlin] 코틀린에서 Type 다루기
개발/Kotlin 2021. 7. 2. 16:50

기본 타입 # JAVA int num1 = 3; long num2 = 4L; num1 + num2 // 자바에서는 가능 # Kotlin val num1: Int = 1 val num2: Long = 2 num1 + num2 // 컴파일 에러 발생 [자바] 기본 타입간의 변환은 암시적으로 이루어질 수 있다. [코틀린] 기본 타입간의 변환은 명시적으로 이루어져야 한다. 타입 캐스팅 # JAVA public static void printAgeIfPerson(Object obj) { if(obj instanceof Person) { Person person = (Person) obj; System.out.println(person.getAge()); } } # Kotlin fun printAgeIfPerson..

[Kotlin] 코틀린에서 Null 다루기
개발/Kotlin 2021. 6. 29. 20:51

코틀린에서의 Null 체크 # JAVA Null 처리 public boolean sw(String str) { if(str == null) return null return str.startsWith("A"); } # Kotlin Null 처리 fun sw(str: String?): Boolean { if(str == null) return null return str.startsWith("A"); } 코틀린에서는 Null이 가능한 타입을 완전 다르게 취급한다 (끝에 물음표) Safe Call과 Elvis 연산자 val str: String? = "ABC" str.length // 불가능 str?.length // 가능 -> [safe call] println(str?.length); // str이 nu..

[Kotlin] 코틀린에서 변수 다루기
개발/Kotlin 2021. 6. 28. 17:24

var과 val의 차이점 # JAVA long num = 10L; // 가변 final long num = 10L; // 불변 # Kotlin var num = 10L // 가변 val num = 10L // 불변 var num1: Long = 10L val num1: Long = 10L // 타입 명시 가능 var num: Int println(a) // 초기값을 지정해주지 않는 경우 컴파일 에러 발생 1.1 코틀린에서는 모든 변수에 가변/불변 여부를 표시해주어야 한다. 1.2 var은 가변이라는 뜻이고 val은 불변이라는 뜻이다. 1.3 var/val을 쓰지만 타입을 명시적으로 지정해줄 수 있다. 1.4 초기값을 지정해주지 않는경우는 컴파일 에러를 발생시킨다. 코틀린에서의 Primitive Type ..