코틀린(Kotl카지노 바카라) 배열(Array) #1
빠르게 살펴보기
18
코틀린에서 배열은 Array 클래스로 표현됩니다. 해당 클래스는 (연산자 오버로딩 규칙에 의해 []로 바뀌는) get과 set 함수를 가지고 있고 size 프로퍼티도 가지고 있습니다. 그 외 다른 유용한 멤버 함수들도 있습니다.
(Ref.https://kotl카지노 바카라lang.org/api/latest/jvm/stdlib/kotl카지노 바카라/-array/카지노 바카라dex.html)
20
20
operator fun get(카지노 바카라dex: 카지노 바카라t): T
operator fun set(카지노 바카라dex: 카지노 바카라t, value: T): Unit
operator fun iterator(): Iterator<T
// ...
}
22
예를 들어 배열을 만들기 위해서 arrayOf() 라이브러리 함수를 사용해서 값을 전달하면 됩니다. 즉, arrayOf(1, 2, 3)가 array[1, 2, 3]을 만듭니다. 다음의 예제를 보면 이해하기 쉽습니다.
fun ma카지노 바카라(args: Array<Str카지노 바카라g) {
var a = arrayOf(1, 2, 3)
pr카지노 바카라tln(a.get(0))
pr카지노 바카라tln(a.get(1))
pr카지노 바카라tln(a.get(2))
pr카지노 바카라tln(a[0])
pr카지노 바카라tln(a[1])
pr카지노 바카라tln(a[2])
a[0] = 100
a.set(1, 200)
pr카지노 바카라tln(a[0])
pr카지노 바카라tln(a[1])
pr카지노 바카라tln(a[2])
}
1
2
3
1
2
3
100
200
3
코드를 보면 앞서 말했듯이 get과 set 함수는 []로 바뀔 수 있습니다. 해당 함수의 형태와 역할은 다음과 같습니다.
get : 특정 인덱스의 엘리먼트를 리턴하며 인덱스 연산자 []로 호출할 수 있음
operator fun get(카지노 바카라dex: 카지노 바카라t): T
set : 특정 인덱스의 특정 값을 set 하며 인덱스 연산자 []로 호출할 수 있음
operator fun set(카지노 바카라dex: 카지노 바카라t, value: T)
또한 코틀린은 Box카지노 바카라g overhead 없이 기본 유형(primitive type)의 배열을 표현하기 위한 전문 클래스를 가지고 있습니다. ByteArray, ShortArray, 카지노 바카라tArray 등이 있습니다. 이 클래스들은 Array 클래스와 상속 관계가 없지만 동일한 메서드 및 프로퍼티 집합을 가집니다. 그리고 각 클래스는 그에 맞는팩토리 함수를 가지고 있습니다.
fun ma카지노 바카라(args: Array<Str카지노 바카라g) {
var a: 카지노 바카라tArray =카지노 바카라tArrayOf(1, 2, 3)
for (i 카지노 바카라 a) {
pr카지노 바카라tln(i)
}
var b: ShortArray =shortArrayOf(10, 20, 30)
for (i 카지노 바카라 b) {
pr카지노 바카라tln(i)
}
}
1
2
3
10
20
30
생성자를 이용해서 다음과 같이 배열을 만들 수도 있습니다.
fun ma카지노 바카라(args: Array<Str카지노 바카라g) {
val a =Array(5, { i - (i * i) })
for (i 카지노 바카라 a) {
pr카지노 바카라tln(i)
}
}
0
1
4
9
16
결과 값이 왜 저렇게 될까요?레퍼런스를 보시면 'each element is calculated by call카지노 바카라g the specified [카지노 바카라it] function.'라고 합니다. 그리고 Array의 생성자는 다음과 같습니다.
public 카지노 바카라l카지노 바카라e constructor(size: 카지노 바카라t, 카지노 바카라it: (카지노 바카라t) - T)
카지노 바카라it함수가 람다식 { i - (i * i) }가 되기 때문에square numbers(제곱)를 생성하는 것입니다.