수색…
일반 배열
Kotlin의 일반 배열은 Array<T>
로 표현됩니다.
빈 배열을 만들려면 emptyArray<T>()
팩토리 함수를 사용하십시오.
val empty = emptyArray<String>()
주어진 크기와 초기 값을 가진 배열을 생성하려면 생성자를 사용합니다 :
var strings = Array<String>(size = 5, init = { index -> "Item #$index" })
print(Arrays.toString(a)) // prints "[Item #0, Item #1, Item #2, Item #3, Item #4]"
print(a.size) // prints 5
배열은 get(index: Int): T
와 set(index: Int, value: T)
함수를 가진다.
strings.set(2, "ChangedItem")
print(strings.get(2)) // prints "ChangedItem"
// You can use subscription as well:
strings[2] = "ChangedItem"
print(strings[2]) // prints "ChangedItem"
프리미티브 배열
이러한 유형 은 복싱을 방지하기 위해 Array<T>
에서 상속 하지 않지만 속성과 메서드는 동일합니다.
코 틀린 유형 | 공장 기능 | JVM 유형 |
---|---|---|
BooleanArray | booleanArrayOf(true, false) | boolean[] |
ByteArray | byteArrayOf(1, 2, 3) | byte[] |
CharArray | charArrayOf('a', 'b', 'c') | char[] |
DoubleArray | doubleArrayOf(1.2, 5.0) | double[] |
FloatArray | floatArrayOf(1.2, 5.0) | float[] |
IntArray | intArrayOf(1, 2, 3) | int[] |
LongArray | longArrayOf(1, 2, 3) | long[] |
ShortArray | shortArrayOf(1, 2, 3) | short[] |
확장 프로그램
average()
는 Byte
, Int
, Long
, Short
, Double
, Float
대해 정의되며 항상 Double
반환합니다.
val doubles = doubleArrayOf(1.5, 3.0)
print(doubles.average()) // prints 2.25
val ints = intArrayOf(1, 4)
println(ints.average()) // prints 2.5
component1()
, component2()
, ... component5()
는 배열의 항목을 반환합니다.
getOrNull(index: Int)
index가 경계를 벗어나면 null을 반환하고 그렇지 않으면 배열의 항목을 반환합니다.
first()
, last()
toHashSet()
은 모든 요소의 HashSet<T>
를 반환합니다.
sortedArray()
, sortedArrayDescending()
은 현재 정렬 된 요소가있는 새 배열을 만들고 반환합니다.
sort()
, sortDescending
배열을 적절한 위치로 정렬합니다.
min()
, max()
배열 반복
Java enhanced 루프와 동일한 루프를 사용하여 배열 요소를 인쇄 할 수 있지만 키워드를 :
에서 in
으로 변경해야합니다.
val asc = Array(5, { i -> (i * i).toString() })
for(s : String in asc){
println(s);
}
for 루프에서 데이터 유형을 변경할 수도 있습니다.
val asc = Array(5, { i -> (i * i).toString() })
for(s in asc){
println(s);
}
배열 만들기
val a = arrayOf(1, 2, 3) // creates an Array<Int> of size 3 containing [1, 2, 3].
클로저를 사용하여 배열 만들기
val a = Array(3) { i -> i * 2 } // creates an Array<Int> of size 3 containing [0, 2, 4]
초기화되지 않은 배열 만들기
val a = arrayOfNulls<Int>(3) // creates an Array<Int?> of [null, null, null]
반환 된 배열은 항상 null 입력 가능 유형을가집니다. Null이 허용되지 않는 항목의 배열은 초기화되지 않은 채 만들 수 없습니다.