Mają hash:Jak uzyskać wartość hash wskaźnikiem numerycznym
h = {:a => "val1", :b => "val2", :c => "val3"}
mogę odnosić się do wartości hash:
h[:a], h[:c]
ale chciałbym odnieść się poprzez indeksu liczbowego:
h[0] => val1
h[2] => val3
Czy to możliwe?
Strzeż Ruby różnic wersji przy użyciu 'values': 1.8.x nie * nie * mają żadnego uporządkowania, podczas gdy nowsze Ruby mieć wstawiania-zamawianie . –
hashe są semantycznie nieuporządkowane; jeśli potrzebujesz indeksowania tablicowego, być może potrzebujesz innej struktury danych lub klasy, która obsługuje oba mechanizmy. – Eevee
@Eevee Jednak mają one dobrze zdefiniowaną kolejność w najnowszej wersji Ruby. Teraz, jeśli to powinno polegać na algorytmie ... to zupełnie inne pytanie. –