Hvert array og hash i Ruby er et objekt, og hvert objekt af disse typer har et sæt indbyggede metoder. Programmerere, der er nye til Ruby, kan lære at bruge hver metode med en matrix og en hash ved at følge de enkle eksempler, der er præsenteret her.
Brug af hver metode med et array-objekt i Ruby
Opret først et array-objekt ved at tildele arrayet til "stooges."
>> stooges = ['Larry', 'Curly', 'Moe']
Derefter skal du ringe til hver metode og oprette en lille blok af kode for at behandle resultaterne.
>> stooges.each {| stooge | print stooge + "\ n"}
Denne kode producerer følgende output:
Larry
Curly
Moe
Hver metode tager to argumenter- et element og en blok. Elementet indeholdt i rørene ligner en pladsholder. Uanset hvad du lægger inde i rørene bruges i blokken til at repræsentere hvert element i arrayet efter tur. Blokken er den kodelinje, der udføres på hver af matrixelementerne og overleveres elementet til behandling.
Du kan nemt udvide kodeblokken til flere linjer ved hjælp af gøre at definere en større blok:
>> stuff.each gør | ting |
udskriv ting
udskriv "\ n"
ende
Dette er det samme som det første eksempel, bortset fra at blokken er defineret som alt efter elementet (i rør) og før slutangivelsen.
Brug af hver metode med et Hash-objekt
Ligesom array-objekt, det hash objekt har en hver metode, der kan bruges til at anvende en blok af kode på hvert element i hash. Opret først et simpelt hash-objekt, der indeholder nogle kontaktoplysninger:
>> contact_info = {'name' => 'Bob', 'phone' => '111-111-1111'}
Derefter skal du ringe til hver metode og oprette en enkelt linjekode med kode til at behandle og udskrive resultaterne.
>> contact_info.each {| nøgle, værdi | print tast + '=' + værdi + "\ n"}
Dette giver følgende output:
navn = Bob
telefon = 111-111-1111
Dette fungerer nøjagtigt som hver metode til et array-objekt med en afgørende forskel. For en hash opretter du to elementer - et til hash nøgle og en for værdien. Ligesom matrixen er disse elementer pladsholdere, der bruges til at videregive hvert nøgle / værdipar til kodeblokken som Ruby løkker gennem hash.
Du kan nemt udvide kodeblokken til flere linjer ved at bruge do til at definere en større blok:
>> contact_info.each do | nøgle, værdi |
print print key + '=' + værdi
udskriv "\ n"
ende
Dette er det samme som det første hasheksempel, bortset fra at blokken er defineret som alt efter elementerne (i rør) og før slutangivelsen.