Scalaコレクション-配列

Scalaはデータ構造を提供します array、同じタイプの要素の固定サイズの順次コレクションを格納します。配列はデータのコレクションを格納するために使用されますが、配列を同じタイプの変数のコレクションと考える方が便利な場合がよくあります。

number0、number1、...、number99などの個々の変数を宣言する代わりに、numbersなどの1つの配列変数を宣言し、numbers [0]、numbers [1]、...、numbers [99]を使用して表現します。個々の変数。このチュートリアルでは、インデックス付き変数を使用して、配列変数を宣言し、配列を作成し、配列を処理する方法を紹介します。配列の最初の要素のインデックスは数値0であり、最後の要素のインデックスは要素の総数から1を引いたものです。

配列変数の宣言

プログラムで配列を使用するには、配列を参照する変数を宣言し、変数が参照できる配列のタイプを指定する必要があります。

以下は、配列変数を宣言するための構文です。

構文

var z:Array[String] = new Array[String](3)

or

var z = new Array[String](3)

ここで、zは、最大3つの要素を保持できる文字列の配列として宣言されています。値を個々の要素に割り当てたり、個々の要素にアクセスしたりできます。これは、次のようなコマンドを使用して実行できます。

コマンド

z(0) = "Zara"; z(1) = "Nuha"; z(4/2) = "Ayan"

ここで、最後の例は、一般に、インデックスは整数を生成する任意の式である可能性があることを示しています。配列を定義するもう1つの方法があります-

var z = Array("Zara", "Nuha", "Ayan")

次の図はアレイを表しています myList。ここに、myList 10個のdouble値を保持し、インデックスは0から9です。

配列の処理

配列要素を処理するとき、配列内のすべての要素が同じタイプであり、配列のサイズがわかっているため、ループ制御構造を使用することがよくあります。

以下は、配列を作成、初期化、および処理する方法を示すプログラムの例です。

object Demo {
   def main(args: Array[String]) {
      var myList = Array(1.9, 2.9, 3.4, 3.5)
      
      // Print all the array elements
      for ( x <- myList ) {
         println( x )
      }
      // Summing all elements
      var total = 0.0;
      for ( i <- 0 to (myList.length - 1)) {
         total += myList(i);
      }
      println("Total is " + total);
      // Finding the largest element
      var max = myList(0);
      for ( i <- 1 to (myList.length - 1) ) {
         if (myList(i) > max) max = myList(i);
      }
      println("Max is " + max);
   }
}

上記のプログラムをに保存します Demo.scala。このプログラムをコンパイルして実行するには、次のコマンドを使用します。

コマンド

\>scalac Demo.scala
\>scala Demo

出力

1.9
2.9
3.4
3.5
Total is 11.7
Max is 3.5

Scalaは、さまざまな配列操作を直接サポートしておらず、任意の次元の配列を処理するためのさまざまなメソッドを提供します。別の方法を使用する場合は、インポートする必要がありますArray._ パッケージ。