2017-11-09 12 views
0

Intタプル識別子(scala)に変換することはできますか?だから、働い例えば、私はこれを持っていたとしますint型をscalaのタプル識別子に変換しますか?

val testTuple = ("Hector", "Jonas", "Javi") 
    val id = 2 
    println(testTuple._id) // does not work as it tries 'num' as a name parameter 

私はそのタプルの要素は、それらが現れる順序でアクセスすることができます見ることができます - インデックス(最初の値を除いては、1ではなく0である)ずっと同じように、例えばtestTuple._1 // is Hectorは、他の場所に記載されているようにhereのように動作します。

どのようにこれを行うことができますか?多くのありがとう

+0

[shapeless](https://github.com/milessabin/shapeless)を使用すると、タプルを配列/ベクトルに変換し、インデックスでアクセスできます –

答えて

0

いいえ、これはできません。 _ntuple<n>のメンバであり、タプルのサイズと自動的に等しくなります。ノートによれば、1 < = N = 22 <各TupleNタイプについて

、Scalaは 素子のアクセス方法の数を定義します。

例:

val data = (4,3,2) 
val sum = data._1 + data._2 + data._3 

詳細については、あなたがScala Tuplesを見ることができます。

ありがとうございました。

関連する問題