1.1. Budowanie łańcucha z części

Problem

Iterując po strukturze danych, należy zbudować łańcuch reprezentujący kolejne kroki tej iteracji.

Rozwiązanie

Istnieją dwa efektywne rozwiązania tego problemu. W najprostszym przypadku rozpoczynamy od łańcucha pustego, sukcesywnie dołączając do niego podłańcuchy za pomocą operatora <<:

hash = { "key1" => "val1", "key2" => "val2" }
string = ""
hash.each { |k,v| string << "#{k} is #{v}\n" }
puts string
# key1 is val1
# key2 is val2

Poniższa odmiana tego prostego rozwiązania jest nieco efektywniejsza, chociaż mniej czytelna:

string = ""
hash.each { |k,v| string << k << " is " << v << "\n" }

Jeśli wspomnianą strukturą danych jest tablica, bądź też struktura ta daje się łatwo przetransformować na ...

Get Ruby. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.