sto iniziando a giocare con Scala, e una delle prime cose che ho letto è che vals sono:vals Scala possono essere modificati
variabili che vengono assegnati una volta e mai cambiare, e VAR, variabili che possono cambiare nel corso della loro vita
Ma io sono curioso di sapere perchè posso fare questo:
val foo = Array(1, 3 ,2)
scala.util.Sorting.quickSort(foo)
Se controllo la variabile foo ora è ordinato, il che significa che è cambiato ... anche se io fare print (foo), entrambi hanno lo stesso, quindi la variabile punta allo stesso oggetto (avrei potuto pensare che la variabile indicasse solo un nuovo oggetto)
Qualcuno potrebbe chiarire?
[questo] (http://stackoverflow.com/a/1792207/298389) potrebbe aiutarti –