String Template
val name = "name"
println("제 이름은 ${name}이에요)
조건식
- 코틀린에는 삼항 연산자가 존재하지 않는다. 만약 a, b를 비교하여 더 큰값을 return 하는 함수를 작성한다고 가정하자.
- 이와같은 기본적인 형태의 함수를 생각할 수 있다. 코틀린에서는 이것보다 더 간결하게 작성할 수 있다.
- 한문장으로 간결해진 형태를 볼 수 있다.
When
- When은 Java의 Switch같은 역할이라고 보면 될 것이다. 하지만 훨씬 간결하게 사용할 수 있다. 예를들어 점수가 0~19점이면 C, 20~79점이면 B, 80~100점이면 A Grade를 표현하고 싶다고 하면 아래와 같이 사용할 수 있다.
- 또는 변수의 값에 따라 when을 활용하여 아래와 같은 방법도 가능하다.
Expression vs Statement
- 리턴값이 존재하는 함수는 Expression, 리턴값이 존재하지 않는 함수는 Statement이다. 하지만 코틀린에서 함수를 정의하고 Return값이 없는 경우에도 Unit이라는 Default Return값이 생략되어 있는 상태이기 때문에 코틀린에서 모든 함수는 Expression이다.
- 자바에서 void같은 경우가 Statement라고 할 수 있다.
Array, List, MutableList, ArrayList
- Array를 생성할 때는 val array = arrayOf() 와 같이 사용하면 된다.
- List를 생성할 때는 val list = listOf()와 같이 사용하면 된다.
- 단순히 array = arrayOf()로 생성할 경우 변수 타입에 상관없이 Any타입으로 추론하여 리스트안에 데이터를 저장할 수 있다.
- 예를들어 arrayOf(1,"e",3.5)와 같은 형태도 가능하다.
Array, List차이
-
Array는 크기가 고정되어 있지만 읽고 쓰기가 모두 가능하다.
-
하지만 코틀린에서 기본 List는 add, remove 또는 읽기는 가능하지만 값을 변경시킬 수 없다.
-
List를 쓰기가 가능하게 만든 것이 MutableList이며 ArrayList는 MutableList의 종류이다.
-
ArrayList의 선언은 val arrayList = arrayList<타입>() 와 같이 사용할 수 있다.