Scala-tuples
Scala-タプル
Scalaタプルは、固定数のアイテムを結合して、それらが全体として渡されるようにします。 配列やリストとは異なり、タプルは異なるタイプのオブジェクトを保持できますが、不変でもあります。
以下は、整数、文字列、およびコンソールを保持するタプルの例です。
次の構文糖(ショートカット)です-
タプルの実際のタイプは、含まれている要素の数と要素、およびそれらの要素のタイプによって異なります。 したがって、(99、 "Luftballons")のタイプはTuple2 [Int、String]です。 ( 'u'、 'r'、 "the"、1、4、 "me")のタイプはTuple6 [Char、Char、String、Int、Int、String]です
タプルのタイプは、Tuple1、Tuple2、Tuple3などです。 現在、Scalaには上限が22ありますが、さらに必要な場合は、タプルではなくコレクションを使用できます。 1 ⇐ N ⇐ 22の各TupleNタイプに対して、Scalaは多くの要素アクセスメソッドを定義します。 次の定義を与えられた-
タプルtの要素にアクセスするには、メソッドt._1を使用して最初の要素にアクセスし、t._2を使用して2番目の要素にアクセスできます。 たとえば、次の式はtのすべての要素の合計を計算します。
Tupleを使用して、List [Double]を取り、3要素のTuple、Tuple3 [Int、Double、Double]で返されるカウント、合計、および平方和を返すメソッドを作成できます。 これらは、並行プログラミングのアクター間でデータ値のリストをメッセージとして渡すのにも役立ちます。
次のプログラム例を試してください。 タプルの使用方法を示します。
例
上記のプログラムを Demo.scala に保存します。 このプログラムをコンパイルして実行するには、次のコマンドを使用します。
コマンド
出力
タプルを反復処理する
- Tuple.productIterator()*メソッドを使用して、Tupleのすべての要素を反復処理できます。
次のサンプルプログラムを試して、タプルを反復処理してください。
例
上記のプログラムを Demo.scala に保存します。 このプログラムをコンパイルして実行するには、次のコマンドを使用します。
コマンド
出力
文字列への変換
- Tuple.toString()*メソッドを使用して、タプルのすべての要素を文字列に連結できます。 次のプログラム例を試して、文字列に変換してください。
例
上記のプログラムを Demo.scala に保存します。 このプログラムをコンパイルして実行するには、次のコマンドを使用します。
コマンド
出力
要素を交換する
次のプログラム例を試して、要素を交換してください。
例
上記のプログラムを Demo.scala に保存します。 このプログラムをコンパイルして実行するには、次のコマンドを使用します。