Ich weiß für Arrays kann ich Folgendes tun, um die erste rote fallen lassen und die zweite halten. Gibt es ein Äquivalent für Hashes?Gibt es eine Ruby-Methode, die drop_while für Hashes entspricht?
Das Beste, was ich aus vergangenen Fragen bekommen konnte, ist das Folgende, aber es funktioniert nicht ganz.
colors = {
first: "red",
second: "yellow",
third: "green",
fourth: "red"
}
colors.delete_if{|k,v| v.length < 4 ? true : break }
Obwohl neuerer Ruby-Hashes ist ‚soft/Einfügen bestellt‘, das ist wirklich nicht außerhalb von Informations/diagnostischen Zwecken verwendet werden. Daher stellen sie keine Operationen dar, die eine Schlüsselreihenfolge herstellen oder darauf angewiesen sind (abgesehen von der Iteration). Ein * könnte * Hash -> Schlüssel-Wert-Array -> x_while -> Hash, aber .. es kann auch darauf hinweisen, dass ein Hash nicht die geeignete Struktur für die gewünschte Aufgabe ist. – user2864740
@ user2864740, ich bitte mich zu unterscheiden. Ich habe Rubys Wartung der Reihenfolge der Schlüsseleinfügung gut genutzt, meine Antwort [http://codereview.stackexchange.com/questions/40776/number-to-words-problem#21293260] ist ein Beispiel. –
Was ist los mit der Verwendung von 'drop_while'? –