Scala Language Array


Esempio

Gli array sono normali array JVM con un tocco che sono trattati come invarianti e hanno costruttori speciali e conversioni implicite. Costruiscile senza la new parola chiave.

 val a = Array("element")

Ora a ha tipo Array[String] .

 val acs: Array[CharSequence] = a
 //Error: type mismatch;  found   : Array[String]  required: Array[CharSequence]

Sebbene String sia convertibile in CharSequence , Array[String] non è convertibile in Array[CharSequence] .

Puoi utilizzare una Array come altre raccolte, grazie a una conversione implicita a TraversableLike ArrayOps :

 val b: Array[Int] = a.map(_.length)

La maggior parte delle collezioni Scala ( TraversableOnce ) hanno un toArray metodo di prendere un implicito ClassTag per costruire la matrice risultato:

 List(0).toArray
 //> res1: Array[Int] = Array(0)

Ciò semplifica l'uso di qualsiasi TraversableOnce nel tuo codice Scala e poi lo passa al codice Java che si aspetta un array.