Iga Ruby massiiv ja räsi on objekt ja igal seda tüüpi objektil on sisseehitatud meetodite komplekt. Ruby jaoks uued programmeerijad saavad selle kasutamise kohta teada iga meetod massiivi ja räsi abil, järgides siin toodud lihtsaid näiteid.
Iga meetodi kasutamine massiiviobjektiga rubiinil
Esiteks looge massiivi objekt, määrates massiivi "stoodes".
>> stooges = ['Larry', 'lokkis', 'Moe']
Järgmisena helistage igale meetodile ja looge tulemuste töötlemiseks väike koodiplokk.
>> stooges.each {| stooge | trükihoid + "\ n"}
See kood annab järgmise väljundi:
Larry
Lokkis
Moe
Iga meetod võtab kaks argumendid—Element ja plokk. Torudes sisalduv element sarnaneb kohahoidjaga. Mida iganes sa torude sisse paned, kasutatakse plokis massiivi iga elemendi järjestikku tähistamist. Plokk on koodirida, mis käivitatakse igale massiiviüksusele ja antakse element töödelda.
Koodiblokki saate hõlpsalt laiendada mitmele reale, kasutades teha suurema ploki määratlemiseks:
>> stuff.each do | asi |
prindi asi
prindi "\ n"
lõpp
See on sama mis esimene näide, välja arvatud see, et plokki määratletakse kõigena pärast elementi (torudes) ja enne lõpplauset.
Iga meetodi kasutamine rämpsobjektiga
Täpselt nagu massiivi objekt, räsiobjekt omab iga meetodit, mida saab kasutada koodirühma rakendamiseks igale räsi üksusele. Esiteks looge lihtne räsiobjekt, mis sisaldab mõnda kontaktteavet:
>> contact_info = {'nimi' => 'Bob', 'telefon' => '111-111-1111'}
Seejärel helistage igale meetodile ja looge tulemuste töötlemiseks ja printimiseks üherealine koodiplokk.
>> contact_info.each {| võti, väärtus | prindiklahv + '=' + väärtus + "\ n"}
See annab järgmise väljundi:
nimi = Bob
telefon = 111-111-1111
See toimib täpselt nagu iga meetod massiiviobjekti puhul, millel on üks oluline erinevus. Räsi jaoks loote kaks elementi - ühe räsi võti ja üks väärtuse jaoks. Nagu massiiv, on ka need elemendid kohahoidjad, mida kasutatakse iga võtme / väärtuse paari edastamiseks koodiploki kujul Rubiini silmused läbi räsi.
Koodiplokki saab hõlpsalt laiendada mitmele reale, kasutades suurema ploki määratlemiseks toimingut:
>> contact_info.each do | võti, väärtus |
print prindiklahv + '=' + väärtus
prindi "\ n"
lõpp
See on sama kui esimene räsi näide, välja arvatud see, et plokki määratletakse kõigena pärast elemente (torudes) ja enne lõppväljavõtteid.