Javaでは、void function(Url... urls)
のようにすることができます。 1..nのURLを使用することができます。問題は、Kotlinと同じことをすることが可能かどうかということです。省略記号演算子KotlinのJava同値
2
A
答えて
3
:引数の
可変数(可変引数)
関数(通常は最後)のパラメータは でマークされてもよいです可変修飾語:
fun <T> asList(vararg ts: T): List<T> { val result = ArrayList<T>() for (t in ts) // ts is an Array result.add(t) return result }
関数に渡される引数の数が可変可能:タイプTの関数内
val list = asList(1, 2, 3)
を可変引数パラメータは、上記の例では、変数TSが入力した、すなわち、Tの配列 として表示されていますアレイ。
は、Javaとの違いに注意してください:すべての 配列要素が別々の引数になるようにKotlinに明示的に、配列を展開する必要がありながら、Javaで、あなたは、単一のパラメータとして配列を渡すことができます。
fun main(args: Array<String>) {
val list = listOf("args: ", *args)
println(list)
}
(それはあなたがJavaで許可されていないアレイと単一の呼び出しでいくつかの固定値からの値を組み合わせることができますどのように参照を:しかし、あなたは、単に対応する引数の前に*文字を置くことによってそれを行うことができます)。
5
解決策はvararg
であり、パラメータを反復することは可能です。 Kotlin基準(https://kotlinlang.org/docs/reference/functions.html)から
private fun areValidFields(vararg fields: String) : Boolean{
return fields.none { it.isNullOrEmpty() || it.isBlank() }
}
関連する問題
- 1. 省略形加算演算子と略記If/Else - Javascript
- 2. jqgrid省略記号
- 3. アイコン省略記号
- 4. 省略記号のサイズ
- 5. CSSの省略記号
- 6. テキストオーバーフロー:省略記号とフレックス
- 7. CSSオーバーライドテキストオーバーフロー:省略記号
- 8. 省略記号フィルタvueJs
- 9. ドロップダウンボックスのオーバーフローテキストの省略記号
- 10. コンパスの省略記号の構文
- 11. バリデーションマクロ - 省略記号の前のカンマ?
- 12. テキストオーバーフロー省略記号ワードラップの後
- 13. EditText省略記号(3つの点...)
- 14. text-overflow:リンク上の省略記号
- 15. R:省略記号を使用する(...)
- 16. ブートストラップ省略記号は、ここで
- 17. html canvas text overflow省略記号
- 18. 動的な幅float-left省略記号
- 19. リストから省略記号(...)を作成
- 20. インライン要素を含む省略記号?
- 21. 省略記号よりも幅が狭い場合の省略記号の切り捨て
- 22. リスト項目および保留番号のテキストオーバーフロー省略記号
- 23. Java演算子 - > how ==演算子
- 24. ! &&演算子Java
- 25. Java + =演算子?
- 26. SQL IN()演算子のSPARQL同値語
- 27. UWP - Template10のページヘッダーの省略記号のタブストップバージョン1.1.12の場合
- 28. CSSのテキストオーバーフローの検出:Firefoxの省略記号
- 29. リスト内の[...](省略記号)はPythonの意味ですか?
- 30. 表の要素の幅と省略記号を設定する
https://kotlinlang.org/docs/reference/functions.html#variable-number-of-arguments-varargs – BakaWaii