2021/01/05 2

[코틀린] ?. 연산자, ?: 연산자

코틀린에는 ?. 연산자가 존재한다. 일반적으로 객체지향적인 언어에서 . 연산자는 객체 인스턴스의 필드나 메소드에 접근하는 역할을 수행한다. 코틀린에서는 객체가 null 일 수도 있는 경우를 코드 상 명확히 하기 위해 . 대신 ?. 를 사용해야 한다. Java와 Kotlin으로 몇 가지 예시를 살펴보자 Java 에서의 . 연산자 다음과 같은 코드가 있다고 해보자. public void main() { System.out.println(getCarOrNull().getName()); } public Car getCarOrNull() { if (...) { return null; } return new Car(); } getCarOrNull 코드를 호출하면 조건에 따라 null이 올 수도 Car 인스턴스가 반..

[코틀린] val과 var 차이

Java에서는 새로운 변수를 만들 때 int number = 3; 처럼 [타입] [변수이름] = [할당될 값 또는 인스턴스]가 문법이었다. 하지만 Kotlin에서는 val number1 = 3 var number2 = 3 처럼 Java 문법상 [타입] 자리에 val 또는 var이 들어가게 된다. 둘의 차이는 간단하다. val : 한 번 선언하면 값이 바뀌지 않는다 (JS의 const) var : 한 번 선언한 이후 값을 바꿀 수 있다 (JS의 let) 예를 들어 number1과 number2를 수정했을때 아래와 같이 되는 것이다. number1 = 4 // 에러 number2 = 4 // 통과 Kotlin은 타입을 가고 있어 number1, numbere2에 대한 타입을 자동으로 추론한다 (즉 Int 타..