Tableau initialisant dans Scala

Je suis nouveau sur Scala, je viens juste de commencer à l’apprendre aujourd’hui. J’aimerais savoir comment initialiser un tableau dans Scala.

Exemple de code Java

Ssortingng[] arr = { "Hello", "World" }; 

Quel est l’équivalent du code ci-dessus dans Scala?

 scala> val arr = Array("Hello","World") arr: Array[java.lang.Ssortingng] = Array(Hello, World) 

Pour initialiser un tableau rempli de zéros, vous pouvez utiliser:

 > Array.fill[Byte](5)(0) Array(0, 0, 0, 0, 0) 

Ceci est équivalent au new byte[5] Java new byte[5] .

Peut aussi faire des inits plus dynamics avec fill, par exemple

 Array.fill(10){scala.util.Random.nextInt(5)} 

==>

 Array[Int] = Array(0, 1, 0, 0, 3, 2, 4, 1, 4, 3) 

En plus de la réponse de Vasil: Si vous avez les valeurs données en tant que collection Scala, vous pouvez écrire

 val list = List(1,2,3,4,5) val arr = Array[Int](list:_*) println(arr.mkSsortingng) 

Mais généralement, la méthode toArray est plus pratique:

 val list = List(1,2,3,4,5) val arr = list.toArray println(arr.mkSsortingng) 

Si vous connaissez la longueur d’Array mais que vous ne connaissez pas son contenu, vous pouvez utiliser

 val length = 5 val temp = Array.ofDim[Ssortingng](length) 

Si vous voulez avoir un tableau à deux dimensions mais que vous ne connaissez pas son contenu, vous pouvez utiliser

 val row = 5 val column = 3 val temp = Array.ofDim[Ssortingng](row, column) 

Bien sûr, vous pouvez modifier Ssortingng pour un autre type.

Si vous connaissez déjà son contenu, vous pouvez utiliser

 val temp = Array("a", "b") 

Une autre façon de déclarer des tableaux multidimensionnels:

 Array.fill(4,3)("") res3: Array[Array[Ssortingng]] = Array(Array("", "", ""), Array("", "", ""),Array("", "", ""), Array("", "", ""))