코틀린에도 문자열과 배열이 있습니다. 언어마다 각각의 특성이 다르기 때문에 아는 것이라 할지라도 한번은 특징을 확인해볼 필요가 있습니다. 이번 포스팅에서는 간략하게 코틀린에서 문자열과 배열의 특징을 알아보겠습니다.
코틀린 문자열
1. kotlin에서 문자열은 String 객체이고 문자 배열이 아닙니다. 따라서 문자열 리터럴 그 자체는 바뀌지 않습니다.
2. C와 마찬가지로 \(이스케이프 시퀀스)를 이용해 특수 문자를 표현합니다.
ex) val text = "Hello World!\n"
3. 문자열 템플릿 기능이 있습니다.
문자열 내부 ${}의 중괄호 사이에 표현식을 넣는 것입니다.
val name = "Charlie"
println("Hello $name Today is ${Date()}")
4. 로우 문자열
이스케이프 문자를 사용하지 않아도 됩니다.
""" """
5. 기본 문자열 연산
String 내의 프로퍼티(변수)
"Hello".length
"Hello".lastIndex
println("Hello!"[3]) (읽는 건 가능, 쓰는 건 불가능)
6. 문자열로 자동 형 변환
val sum = 10
val str = "The Sum" + sum //(자동으로 문자열로 바뀐다)
코틀린 배열
1. 기존 배열 객체의 길이를 늘릴 순 없습니다.
size가 2로 정해져있고, 만약 여기에 다른 인자를 추가하면 새로운 배열이 만들어지는 것입니다.
val b = arrayOf("Hello", "World")
2. 배열은 mutable한 객체입니다.
따라서 같은 주소를 참조하는 경우, 하나의 수정에 의해 다른 참조 변수에서 영향을 받을 수 있습니다. 이러한 경우 copyOf()로 배열을 새로 생성해줄 수 있습니다.
3. 배열의 타입
배열의 타입이 한번 정해지면, 다른 타입의 배열을 참조할 수 없습니다. 배열을 생성하면 그 길이를 바꿀 수 없지만, + 연산자를 사용해 원소를 추가한 새로운 배열을 생성할 수 있습니다.
4. ==연산자
'==', '!=' 연산자는 동일 객체인지 여부만 판단하고 안의 값은 판단하지 않습니다. 내용 비교를 위해서는 contentEquals()를 사용해야 합니다.
intArrayOf(1,2,3) == intArrayOf(1,2,3) // false
'프로그래밍 언어 > Kotlin' 카테고리의 다른 글
[Kotlin] null 정리 (0) | 2022.10.11 |
---|---|
[Kotlin] 코틀린 클래스, 생성자 (0) | 2022.10.09 |
[Kotlin] 코틀린 함수 (1) | 2022.10.08 |
[Kotlin] 코틀린 기본 타입 (1) | 2022.10.07 |
[Kotlin] 코틀린 언어 특징 (0) | 2022.10.06 |