코틀린의 Array 자료형을 간단하게 알아보겠습니다.
Array 생성
여러 가지 방법으로 Array를 생성할 수 있습니다.
arrayOf()
자료형을 명시하지 않는 경우(Any), 자료형 구분없이 다양한 타입을 갖는 배열을 생성할 수 있습니다. 물론 좋은 방법은 아닌 것 같습니다.
val arrTmp = arrayOf<Any>(1, 2.200304, 3, "WTF", 5)
// 1 2.200304 3 WTF 5
arrayOfNulls()
원하는 원소의 갯수를 가지는, null로 모두 이루어진 배열을 생성합니다.
val arrTmp = arrayOfNulls<String>(5);
// null null null null null
Array()
배열을 생성할 때 가장 자주 사용하는 방법입니다. 파이썬처럼 내부 조건문을 활용해서 다양한 배열을 생성할 수 있습니다.
val arrTmp = Array<Int>(5) { i -> if (i%2 == 0) 0 else i};
// 0 1 0 3 0
Array 접근 및 수정
단순히 인덱싱 뿐만 아니라 코틀린에서는 접근 함수 get() 과 수정 함수 set()을 제공합니다. 아래 코드 예시입니다.
var arrTmp = Array<Int>(5) { i -> i};
arrTmp.forEach { print(it) }
var arrTmpGet1: Int = arrTmp.get(1)
print("\n" + arrTmpGet1 + "\n")
var arrTmpSet1 = arrTmp.set(1, 6)
arrTmp.forEach { print(it) }
print("\n" + arrTmpSet1)
/*
01234
1
06234
kotlin.Unit
*/
여기서 눈여겨 볼만한 점은 arrTmpSet1 은 Kotlin.Unit 을 반환한다는 점인데, 이에 대한 보다 자세한 글은 여기를 참고하면 됩니다.
'프로그래밍 > 안드로이드 <Kotlin>' 카테고리의 다른 글
[Kotlin] 코틀린 제네릭(Generics)의 기본 (0) | 2023.07.05 |
---|---|
[android] gradle 스크립트 파일에 대한 모든 이해 (0) | 2023.06.24 |
[Kotlin] 코틀린 Nullability (0) | 2023.04.16 |
[android] 업로드 키, 인증서 재설정하기 (0) | 2023.02.27 |
[android] 배포용 안드로이드 앱 번들 빌드하기 (0) | 2023.02.26 |