if, unless, ternary
Grunnleggende forgrening
if, unless, ternary er en gratis leksjon i Ruby Academy på CoddyKit. Dette er leksjon 1 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Ruby Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Ruby Academy inneholder totalt 4 leksjoner.
Grunnleggende forgrening
Programmer må ta beslutninger. I Ruby kjører nøkkelordet if en kodeblokk bare når en betingelse er truthy.
Et if-uttrykk evaluerer en betingelse og kjører koden mellom if og end hvis betingelsen er oppfylt.
age = 20
if age >= 18
puts "You are an adult"
endif / else
Legg til en else-gren for å håndtere tilfellet der betingelsen er false. Nøyaktig én gren kjører.
age = 12
if age >= 18
puts "Adult"
else
puts "Minor"
endelsif-kjeder
Bruk elsif til å teste flere betingelser i rekkefølge. Ruby sjekker dem ovenfra og ned og kjører den første som stemmer.
- Legg merke til stavemåten:
elsif, ikkeelseifellerelse if.
score = 75
if score >= 90
puts "A"
elsif score >= 70
puts "B"
elsif score >= 50
puts "C"
else
puts "F"
endif er et uttrykk
I Ruby er nesten alt et uttrykk som returnerer en verdi. Et if-uttrykk returnerer verdien fra grenen som kjørte, slik at du kan tilordne den til en variabel.
age = 20
status = if age >= 18
"adult"
else
"minor"
end
puts statusif-modifikator
For én kort setning kan du plassere if på slutten av linjen. Dette ligner nesten på engelsk og er svært vanlig i idiomatisk Ruby.
temperature = 35
puts "It is hot!" if temperature > 30Bli kjent med unless
unless er det motsatte av if: det kjører innholdet når betingelsen er false. Tenk på unless x som if !x.
logged_in = false
unless logged_in
puts "Please log in"
endunless-modifikator
I likhet med if fungerer unless også som en avsluttende modifikator for énlinjers uttrykk.
stock = 0
puts "Out of stock" unless stock > 0Unngå unless med else
unless kan ta en else-gren, men det blir raskt forvirrende å lese. Foretrekk et vanlig if når du trenger begge grenene.
active = false
unless active
puts "Inactive"
else
puts "Active"
end
# Clearer as a normal if/elseDen ternære operatoren
Den ternære operatoren er en kompakt if/else for én enkelt verdi. Syntaks: condition ? value_if_true : value_if_false.
age = 20
label = age >= 18 ? "adult" : "minor"
puts labelTernær operator i strenger
Den ternære operatoren er spesielt nyttig i strenginterpolering, der et fullstendig if/else-uttrykk ikke passer inn på en ryddig måte.
count = 1
puts "You have #{count} item#{count == 1 ? "" : "s"}"Når bør du bruke hva
En rask veiledning:
if/elsif/elsefor generell forgrening.unlessfor én negativ sjekk som leses naturlig.- Den ternære operatoren når du velger mellom to enkle verdier.
Lesbarhet er alltid viktigere enn smarthet.
n = 7
parity = n.even? ? "even" : "odd"
puts "#{n} is #{parity}"Rask sjekk
Test forståelsen din av forgrening.
Oppsummering
Du har lært om Rubys verktøy for forgrening:
if/elsif/elsekjører kode basert på truthiness.ifer et uttrykk som returnerer en verdi.- Modifikatorformer (
do_x if cond) passer til korte énlinjers uttrykk. unlesserif !– bruk det til tydelige negative sjekker.- Den ternære operatoren
? :velger kortfattet mellom to verdier.
grade = 88
result = grade >= 60 ? "pass" : "fail"
puts "Result: #{result}"Lær deg Ruby med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 29
- Leksjoner
- 109
Ofte stilte spørsmål
Er leksjonen «if, unless, ternary» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Ruby Academy, inkludert «if, unless, ternary», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Ruby Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «if, unless, ternary»?
Grunnleggende forgrening Du øver på Ruby Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Ruby Academy?
Ingen tidligere erfaring er nødvendig. Ruby Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.
Hvor lang tid tar leksjonen «if, unless, ternary»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Ruby Academy-leksjonen?
Ja. Alle Ruby Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- if, unless, ternary
- case/when-uttrykk
- Sannhetsverdi i Ruby
- Guard-ledd