Stampare valori da 2 Array ordinati in base alla 1° array
In questo snippet vedrai come stampare i valori di 2 array ordinati in base crescente o decrescente rispetto ai valori di una delle 2 array.
import UIKit
// Array
let nomi = ["iPhone", "iMac", "iPod", "iPad"]
let anni = [2007, 1998, 2001, 2010]
//Struttura
struct Device {
let nome: String
let anno: Int
}
// Creo variabile contenete il risultato
let devices = zip(nomi, anni).map(Device.init).sorted { $0.anno < $1.anno }
// Sampo a video il risultato trami un ciclo for in
for x in devices{
print("\(x.nome) - \(x.anno)")
}
// Risultato: iMac - 1998, iPod - 2001, iPhone - 2007, iPad - 2010
Ovviamente cambiando il segno in maggiore nel confronto { $0.anno > $1.anno } i dati saranno ordinati in modo Decrescente. Se cambiato il parametro di confronto in { $0.nome < $1.nome } i dati saranno ordinati in base alla Array nomi.


