Slik bruker du løkker i Ruby

Tor Piyapalakorn / EyeEm / Getty Images
Dataprogrammer må ofte utføre handlinger flere ganger, ikke bare én gang. For eksempel, et program som skriver ut all den nye e-posten din, må skrive ut hver e-post fra en liste, ikke bare en enkelt e-post. For å gjøre dette brukes konstruksjoner kalt loops. En løkke vil gjenta uttalelser inne i den flere ganger til en betingelse er oppfylt.
Mens Loops
Den første typen av disse løkkene er en while-løkke. Mens loops vil utføre alle setningene i dem så lenge den betingede setningen forblir sann. I dette eksemplet øker loopen kontinuerlig verdien av variabelen Jeg av en. Så lenge den betingede erklæringen Jeg<10 er sant, vil loopen fortsette å utføre setningen i += 1 som legger en til variabelen.
#!/usr/bin/env rubin
i = 0
mens jeg<10
i += 1
slutt
setter i
Til Loops
Til-løkker er nesten identiske med while-løkker, bortsett fra at de vil løkke så lenge den betingede setningen er falsk . While-løkken vil sløyfe mens betingelsen er sann, til-løkken vil løkke før tilstanden er sann. Dette eksemplet er den funksjonelle ekvivalenten til while-løkkeeksemplet, bortsett fra å bruke en til-løkke, til i == 10 . Variabelen økes med én til verdien er lik ti.
#!/usr/bin/env rubin
i = 0
til i == 10
i += 1
slutt
setter i
Loops 'Ruby Way'
Selv om de mer tradisjonelle mens og til-løkkene brukes i Ruby-programmer, er lukkingsbaserte løkker mer vanlige. Det er ikke engang nødvendig å forstå hva lukkinger er eller hvordan de fungerer for å bruke disse løkkene; faktisk blir de sett på som normale løkker til tross for at de er veldig forskjellige under panseret.
Times Loop
De ganger loop kan brukes på en hvilken som helst variabel som inneholder et tall eller brukes på et tall selv. I følgende eksempel kjøres den første sløyfen 3 ganger og den andre sløyfen kjøres uansett hvor mange ganger brukeren legger inn. Hvis du legger inn 12, vil den kjøre 12 ganger. Du vil legge merke til at tidsløkken bruker prikken syntaks (3. ganger gjør det) i stedet for søkeordsyntaksen som brukes av while og til-løkken. Dette har å gjøre med hvordan tidsløkken fungerer under panseret, men den brukes på samme måte en stund eller til løkken brukes.
#!/usr/bin/env rubin
3 ganger gjør
setter 'Dette vil bli skrevet ut 3 ganger'
slutt
skriv ut 'Skriv inn et tall:'
num = gets.chomp.to_i
antall ganger gjør
setter 'Ruby er flott!'
slutt
Hver løkke
De Hver loop er kanskje den mest nyttige av alle løkkene. Hver løkke vil ta en liste over variabler og kjøre en blokk med setninger for hver av dem. Siden nesten alle dataoppgaver bruker lister over variabler og må gjøre noe med hver av dem i listen, er hver løkke den desidert vanligste løkken i Ruby kode . En ting å merke seg her er argumentet til loopens blokk med utsagn. Verdien til den gjeldende variabelen sløyfen ser på er tilordnet variabelnavnet i rørtegn, som er |n| i eksemplet. Første gang sløyfen går, vil n variabelen vil være lik 'Fred', andre gang løkken kjører vil den være lik 'Bob' og så videre.
#!/usr/bin/env rubin
# En liste over navn
names = [ 'Fred', 'Bob', 'Jim' ]
names.each do|n|
setter 'Hei #{n}'
slutt