Kotlinは、非構造の宣言をサポートしています。関数の引数に構造体を使用することはできますか?
a, b = (1, 2)
Pythonはまた、あなたが関数の引数と同様の操作を行うことができますスプラット/スプレッド演算子を持っています:
val (a, b) = Pair(1,2)
これは、Pythonの反復可能なアンパックに似ています
def f(a, b): pass
pair = (1,2)
f(*pair)
kotlinは同様の能力を持っていますか?明らかに、構造を手動で解凍することができます:
f(pair.component1(), pair.component2())
しかし、それはclunkyです。それをもっとエレガントにする方法はありますか? docs on the subjectに何も表示されません。非可変引数引数の
1)スプレッド演算子:
を印刷します。そのような限られた方法で普及しているオペレータが存在するのは不思議です。 –