배열 선언 - 생성자로 배열 생성, 표준 라이브러리 함수로 배열 생성, 기본 타입 배열 생성, 컬렉션을 배열로 변환

CODEDRAGON Development/Kotlin

반응형


 

Array 클래스

http://bit.ly/2yQEt4l


 

 

배열 선언

·         생성자로 배열 생성

·         표준 라이브러리 함수로 배열 생성

·         기본 타입 배열 생성

·         컬렉션을 배열로 변환

 

 

 

 

생성자로 배열 생성

생성자

설명 

Array(size, {lambda})

Array<T>(size, {lambda})

Array(size) {lambda})

해당 개수만큼 주어진 람다식를 이용해서 배열 요소를 생성합니다.

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html#constructors

 

 

 

 

 

표준 라이브러리 함수로 배열 생성

·         배열 생성은 표준 라이브러리 함수인 arrayOf(), arrayOfNulls(), emptyArray() 사용하여 만들 있습니다.

·         원하는 요소를 나열하면 해당 요소를 가진 배열을 만들어줍니다.

 

배열 생성함수

설명 

arrayOf(원소1,원소2,...)

arrayOf<T>(원소1,원소2,...)

 

해당 원소를 가진 배열 생성

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/array-of.html

arrayOfNulls<T>(size)

해당 개수만큼의 null 요소를 가진 배열 생성

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/array-of-nulls.html

 

 

 

 

기본 타입 배열 생성

·         Array Build Standard Library functions

·         Array클래스로 생성하게 되면 Wrapping으로 인한 Boxing 발생하게 되지만 박싱하지 않은(Boxing non-overhead) 기본 타입(primitive type) 배열을 생성할 있습니다.

·         기본 타입 배열로 만들수 있는 ByteArray, ShortArray, IntArray, CharArray, BooleanArray, FloatArray, DoubleArray, LongArray 클래스을 제공하지만 Array클래스와 상속관계는 없습니다.

·         xxxArrayOf()함수를 통해 빌더 클래스 타입의 배열을 쉽게 생성할 있으며 xxx 타입을 의미하며 해당 타입의 xxxArray 클래스 배열을 반환합니다.

 

 

배열 빌더 클래스

(Array Builder Classes)

URL

class ByteArray

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html

class ShortArray

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-short-array/index.html

class IntArray

 

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html

class CharArray

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-array/index.html

class BooleanArray

 

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean-array/index.html

class DoubleArray

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-double-array/index.html

class FloatArray

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-float-array/index.html

class LongArray

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long-array/index.html


 


 

 

 

컬렉션을 배열로 변환

toTypedArray()함수를 사용하여 컬렉션을 배열로 만들어줍니다.

 

fun ByteArray.toTypedArray(): Array<Byte>

fun ShortArray.toTypedArray(): Array<Short>

fun IntArray.toTypedArray(): Array<Int>

fun LongArray.toTypedArray(): Array<Long>

fun FloatArray.toTypedArray(): Array<Float>

fun DoubleArray.toTypedArray(): Array<Double>

fun BooleanArray.toTypedArray(): Array<Boolean>

fun CharArray.toTypedArray(): Array<Char>

 

fun UIntArray.toTypedArray(): Array<UInt>

fun ULongArray.toTypedArray(): Array<ULong>

fun UByteArray.toTypedArray(): Array<UByte>

fun UShortArray.toTypedArray(): Array<UShort>

 

fun <reified T> Collection<T>.toTypedArray(): Array<T>

 

fun <T> Collection<T>.toTypedArray(): Array<T>

 

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/to-typed-array.html