Ritornare più valori in una funzione in Scala

Mattepuffo's logo
Ritornare più valori in una funzione in Scala

Ritornare più valori in una funzione in Scala

Scala è uno di quei linguaggi in cui una funzione può ritornare un solo valore.

Se avessimo bisogno di ritornare più valori possiamo usare qualche trucco.

Un primo esempio è usando una tupla:

package com.test

@main
def main(): Unit = {
  val values = myFunc()
  println(values(0))
  println(values(1))
}

def myFunc(): (Int, String) = {
  (1, "ciao")
}

Un secondo modo è usando una List indicando un tipo Any, in modo da poter differenziare i tipi delle voci della lista:

package com.test

@main
def main(): Unit = {
  val values = myFunc()
  println(values.head)
  println(values(1))
}

def myFunc(): List[Any] = {
  List(1, "ciao")
}

E voi conoscete altri modi?

Enjoy!


Condividi

Commentami!