개발 공부/Kotlin / / 2019. 5. 19. 13:25

[Kotlin]코틀린 배열 arrayOf(), Array

코틀린 배열 

var array = arrayOf(1,2,3) // 특정 값을 넣어서 배열을 생성하는 경우 
var array2 = Array(10,{0}) // 크기만 정해서 배열을 생성하는 경우 

 

배열 생성 원리

arrayOf()는 Array타입의 배열 객체를 반환하는 형태

public inline fun <reified @PureReifiable T> arrayOf(vararg elements: T): Array<T>

 

Array를 이용해 생성한 배열은 Array클래스를 이용해서 생성한 것

public class Array<T> {

    public inline constructor(size: Int, init: (Int) -> T)
    
    ...
}

 

arrayOf()

arrayOf()에 특정 타입을 지정하지 않은 상태로 배열을 생성하면 어떤 값이 들어가도 상관없음.

다양한 타입의 데이터를 넣을 수 있다.

var anyArray = arrayOf(1,100,"안녕하세요",true, 100.13)

특정 타입을 지정하는 경우 

제네릭을 사용해서 표현하거나 코틀린에서 제공하는 기본타입의 배열함수를 이용할 수 있다.

 

  • 제네릭
var arrayInt = arrayOf<Int>(10,20,30)
var arrayString = arrayOf<String>("하나","둘","셋")

 

  • 제공 함수
var arrayInt = intArrayOf(100,200,300)
var arrayChar = charArrayOf('A','B','C')
var arrayBoolean = booleanArrayOf(true,false)
...


Array

생성 방법

var array = Array(사이즈,{들어갈 값})
또는
var array2 = Array(사이즈){들어갈 값}

사용 예

var array = Array(10,{0}) // 사이즈는 10이고 각 자리에는 지금 빈값이라고 할 수 있는 0이 들어가 있음
var array2 = Array(10,{i->i*5}) //사이즈는 10이고 각 자리에 인덱스*5의 값이 들어가 있음
var array3 = Array(5,{""}) //사이즈는 5이고 각 자리에는 공백이 들어가 있음

특정 타입을 지정하는 경우 

제네릭을 사용해서 표현하거나 코틀린에서 제공하는 기본타입의 전문 클래스를 이용할 수 있다.

 

  • 제네릭
var array = Array<Int>(4,{0})
var array2 = Array<String>(10,{""})

 

  • 제공 클래스
var array = IntArray(10,{0})
var array2 = ByteArray(5,{0})
var array3 = CharArray(10){' '}
...

 

 

배열에서 값 넣고 빼기

넣기

array.set(0,100) //array.set(인덱스, 넣을 값)
array[3] = 300 //array[인덱스] = 넣을 값

빼기

array.get(0) // array.get(인덱스)
array[3] // array[인덱스]

 

'개발 공부 > Kotlin' 카테고리의 다른 글

[Kotlin] 코틀린 function(함수)  (0) 2019.05.21
[Kotlin]코틀린 for문, for의 조건 표현식  (0) 2019.05.20
[Kotlin]코틀린 조건문 when  (0) 2019.05.18
변수 선언 및 문자열  (0) 2018.04.25
함수 선언과 조건문  (0) 2018.04.24
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유