回答:
以下のための特別なケースはありませんString
ので、String
とは対照的に、JVM上の一般的な参照タイプであるJavaのプリミティブ(int
、double
、...) -リファレンスでそれらを格納するArray<T>
必要がようなオブジェクトにそれらをボクシングInteger
とDouble
。IntArray
Kotlinのような特殊な配列の目的は、ボックス化されていないプリミティブを格納し、ボックス化とボックス化解除のオーバーヘッドを取り除くことです(Java int[]
ではなくと同じInteger[]
)。
Java での使用と同等のArray<String>
(そしてArray<String?>
nullableのために)使用できString[]
ます。
val stringsOrNulls = arrayOfNulls<String>(10) // returns Array<String?>
val someStrings = Array<String>(5) { "it = $it" }
val otherStrings = arrayOf("a", "b", "c")
Array of Strings
Kotlinで空を作成するには、次の6つの方法のいずれかを使用する必要があります。最初のアプローチ:
val empty = arrayOf<String>()
2番目のアプローチ:
val empty = arrayOf("","","")
3番目のアプローチ:
val empty = Array<String?>(3) { null }
4番目のアプローチ:
val empty = arrayOfNulls<String>(3)
5番目のアプローチ:
val empty = Array<String>(3) { "it = $it" }
6番目のアプローチ:
val empty = Array<String>(0, { _ -> "" })
文字列配列を作成する一般的な方法のいくつかは、
これにより、初期値が空の文字列となる5つの文字列の配列が作成されます。
<String?>
(5)これにより、初期値がnullになるサイズ5の配列が作成されます。文字列データを使用して配列を変更できます。
すでに配列の内容がわかっている場合は、配列を直接初期化できます。
文字列の多次元配列を作成する簡単な方法もあります。
var matrix = Array(5){Array(6){""}}
これは、空の文字列の初期値を持つ5行6列の行列を作成する方法です。
この例はAndroidで完全に動作します
kotlinでは、ラムダ式を使用できます。Kotlin配列コンストラクターの定義は次のとおりです。
Array(size: Int, init: (Int) -> T)
これは次のように評価されます。
skillsSummaryDetailLinesArray = Array(linesLen) {
i: Int -> skillsSummaryDetailLines!!.getString(i)
}
または:
skillsSummaryDetailLinesArray = Array<String>(linesLen) {
i: Int -> skillsSummaryDetailLines!!.getString(i)
}
この例では、フィールド定義は次のとおりです。
private var skillsSummaryDetailLinesArray: Array<String>? = null
お役に立てれば
typealias StringArray = Array<String>
;)