サーチ…
汎用配列
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拡張ループと同じループを使用して配列要素を出力できますが、キーワードを:
から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を許可しない項目の配列は、初期化されていない状態では作成できません。
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow