Cos'è l' <=>
operatore Ruby (astronave)? L'operatore è implementato in altre lingue?
[1,nil] <=> [1,3]
si ottenga una a nil
causa della coerenza dell'algoritmo, confrontando ogni elemento a turno fino a quando il <=>
risultato NON è 0
. Non c'è modo per Ruby di dichiarare minore o maggiore di in questo esempio, dal momento che un confronto semplicemente non può essere fatto. L' nil
dovrebbero essere trattati come "diverso". Se sai qualcosa sui dati, e ad esempio vuoi trattare nil
come 0
, Ruby lo rende facile.
[1,3,2] <=> [2,2,2]
?