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 O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.