現在Array(0, {i -> ""})
を使用していますが、Array()
などのより良い実装があるかどうかを知りたい
さらに、arrayOfNulls<String>(0) as Array<String>
を使用している場合、コンパイラはこのキャストが成功しないことを警告します。ただし、Array(0, {i -> ""})
内のデフォルトの実装です。私は何かを見逃していますか?
後半(2015年6月)には、Kotlin標準ライブラリ関数があります
public fun <T> arrayOf(vararg t: T): Array<T>
したがって、文字列の空の配列を作成するには、次のように記述できます。
val emptyStringArray = arrayOf<String>()
null
?それが問題です!null
sの配列を作成するには、単にarrayOfNulls<Type>(length)
を使用します。
しかし、サイズlength
のempty配列を生成するには、次を使用します。
val arr = Array(length) { emptyObject }
注:youmustemptyObject
を各タイプごとに適切に定義するnull
sが不要です)。例String
sの場合、emptyObject
には""
を指定できます。そう:
val arr = Array(3) { "" } // is equivalent for: arrayOf("","","")
ここ はの実例です。デフォルトでは、プログラムは2つのサンプル引数で実行されることに注意してください。
ヌル配列
var arrayString=Array<String?>(5){null}
var nullArray= arrayOfNulls<String>(5)
空の配列を作成する2つの方法、ラムダを使用しない2番目の方法を見つけました。
var arr = Array (0, { i -> "" })
var arr2 = array<String>()
Kotlinのヌル文字列に関しては、これは許可されていません。文字列をnullにするにはString? typeを使用する必要があります。
上記のように、IntArray(size)
またはFloatArray(size)
を使用できます。
使用:
@JvmField val EMPTY_STRING_ARRAY = arrayOfNulls<String>(0)
Null値で初期化された文字列のサイズ0の配列を返します。
1。間違った:
@JvmField val EMPTY_STRING_ARRAY = emptyArray<String>()
arrayOfNulls<String>(0)
を返します
2。間違った:
@JvmField val EMPTY_STRING_ARRAY = arrayOf<String>()
文字列を含む配列を返します。