Nel libro 'Scala per l'Impaziente' l'autore fornisce i seguenti due esempi di 'for-di comprensione':Perché queste dichiarazioni dall'aspetto simile producono oggetti di tipi diversi?
for (c <- "Hello"; i <- 0 to 1) yield (c + i).toChar
// Yields "HIeflmlmop"
for (i <- 0 to 1; c <- "Hello") yield (c + i).toChar
// Yields Vector('H', 'e', 'l', 'l', 'o', 'I', 'f', 'm', 'm', 'p')
Tuttavia, egli non ha menzionato il motivo per cui l'uscita è una stringa nel primo caso, e Vector nel secondo. Qualcuno potrebbe spiegare per favore? Grazie.