Začnite svojo programsko kariero Rust z učenjem o teh osnovah jezika.
Nadzorne strukture so programski konstrukt, ki vam omogoča nadzor poteka izvajanja v vaših programih. Nadzorne strukture vam omogočajo, da določite navodila za zagon samo, če so izpolnjeni določeni pogoji.
Nadzorne strukture Rusta so ključne za upravljanje programskega toka, saj omogočajo učinkovito izvajanje kode, hkrati pa poenostavijo zapletene naloge v manjše komponente, ki jih je mogoče ponovno uporabiti.
Pogojni stavki Rust
Pogojni stavki so konstrukti, ki vam omogočajo izvajanje kode na podlagi pogojev. Pogojni stavki pridejo prav pri odločanju, saj je izvajanje programa odvisno od tega, ali je pogoj ocenjen na prav oz lažno. Rust zagotavlja če, drugače, in tekma izjave za odločanje.
V programih Rust je če stavek preveri, ali je določen pogoj ovrednoten kot resničen. Če se, program zažene povezani blok kode. Če je pogoj ovrednoten kot false, program preskoči ta blok kode in preide na naslednji stavek ali zažene drugače blok izjav, če obstaja.
The tekma Stavek je zmogljiv konstrukt nadzornega toka, ki omogoča programu, da ujema vrednosti z nizom vzorcev in izvede kodo na podlagi ujemajočega se vzorca.
Izjave Rust's if
Izjavil boš če izjave v vaših programih Rust z če ključna beseda, ki ji sledi pogoj:
če stanje {
// koda za izvedbo, če je pogoj resničen
}
Tukaj je primer, kako lahko uporabite stavek if v svojih programih Rust:
fnglavni() {
pustiti x = 15;
če x > 10 {
println!("x je večji od 10");
}
}
The x spremenljivka vsebuje 32-bitno celo število, stavek if pa preveri, ali je vrednost x večja od deset, preden zažene blok kode, ki jo natisne.
Rustove druge izjave
Uporabili boste drugače ključna beseda za izvedbo bloka kode, ko pričakujete, da bo an če izjava bi bila ocenjena kot napačna.
če stanje {
// koda za izvedbo, če je pogoj resničen
} drugače {
// koda za izvedbo, če je pogoj napačen
}
Tukaj je primer, kjer x ni večji od 10, če izjava ocenjuje lažno, in an drugače izjava teče.
fnglavni(){
pustiti x = 5;če x > 10 {
println!("x je večji od 10");
} drugače {
println!("x ni večji od 10");
}
}
Od x je 5 in 5 ni večje od 10, program preskoči če blokira in izvrši drugače blok.
Rustove izjave o ujemanju
Uporabili boste tekma ključna beseda za kompleksno odločanje za preverjanje niza vzorcev in izvajanje kode na podlagi ujemanja vzorcev. Izjave o ujemanju so podobne preklopni stavki v C#, Go in C++.
Tukaj je struktura izjave o ujemanju Rust:
tekma vrednost {
vzorec1 => {
// koda za izvedbo, če se vrednost ujema z vzorcem1
},
vzorec2 => {
// koda za izvedbo, če se vrednost ujema z vzorcem2
},
// itd.
}
Tukaj je opisano, kako lahko uporabite izjave o ujemanju v svojih programih:
pustiti ocena = 'B';
tekma ocena {
'A' => println!("Odlično delo!"),
'B' => println!("Dobro opravljeno."),
'C' => println!("Lahko bi bil boljši."),
_ => println!("To ni veljavna ocena."),
}
The razred spremenljivka je znak in tekma stavek preveri, kateri od znakov ovrednoti vrednost spremenljivke ocene, preden izvede kodo za operatorjem =>. Vzorec podčrtaja (_) lahko uporabite za ujemanje vrednosti, ki se ne ujemajo z drugimi vzorci (privzeti vzorec).
Zanke v Rustu
Zanke so temeljni konstrukt, ki se uporablja za ponavljajoče se naloge, kot je spletno strganje in druga avtomatizirana dejanja. Rust ponuja različne vrste zank, vključno z medtem zanke, za zanke in zanka zanka.
Rust's while Loops
Medtem ko zanke ponavljajo blok kode, dokler je podani pogoj ovrednoten kot resničen. Preden določite pogoj, boste v Rustu določili zanke while z medtem ključna beseda.
medtem stanje {
// koda za izvedbo
}
Pogoj mora biti logični izraz, ki določa nadaljevanje zanke. Ko je pogoj ovrednoten kot false, se zanka konča.
Tukaj je primer zanke Rust while, ki natisne številke od ena do pet.
fnglavni() {
pustitimut jaz = 1;
medtem jaz <= 5 {
println!("{}", jaz);
jaz += 1;
}
}
Zanka while v glavni funkcija prečka številke od ena do pet, medtem ko povečuje jaz spremenljivka za ena, dokler jaz spremenljivka večja od pet, kjer se zanka konča.
Zanka Zanka
The zanka ključna beseda ustvari neskončno zanko, dokler ne navedete izhoda z odmor ključna beseda.
zanka {
// koda za izvedbo
če stanje {
odmor;
}
}
Koda v zanka blok se bo izvajal, dokler zanka ne naleti na a odmor ključna beseda.
Tukaj je primer uporabe zanka zanko za tiskanje številk od ena do pet, preden določite odmor ključna beseda za izhod.
fnglavni() {
pustitimut jaz = 1;
zanka {
println!("{}", jaz);
jaz += 1;
če jaz > 5 {
odmor;
}
}
}
The glavni funkcija izvede zanko in če izjava poveča jaz spremenljivka. The če stavek določa prekinitev zanke, ko je jaz spremenljivka presega pet.
Rust je za zanke
V Rustu zanke for ponavljajo skozi obseg ali zbirko vrednosti. Uporabili boste za ključno besedo za začetek zanke for, preden podate obseg ali zbirko, na kateri deluje.
za spremenljivka v obseg {
// koda za izvedbo
}
The obseg je izraz, ki ovrednoti zaporedje vrednosti, spremenljivka pa je spremenljivka, ki po vrsti prevzame vsako vrednost v zaporedju. Blok kode se izvede enkrat za vsako vrednost v zaporedju.
Tukaj je primer zanke for, ki natisne vrednosti v razponu od ena do deset.
fnglavni() {
za jaz v1..=10 {
println!("{}", jaz);
}
}
Zanka se ponavlja skozi vrednosti od 1 do 10. Pri vsaki ponovitvi ima spremenljivka (i) naslednjo vrednost, ki je println! makro se nato natisne.
Lahko uporabite nadaljevati ključna beseda za preskok vrednosti v zankah for. Tukaj je opisano, kako lahko preskočite soda števila, ko delate z obsegom:
fnglavni() {
za št v1..=10 {
če št % 2 == 0 {
nadaljevati; // preskoči soda števila
}
println!("{}", št.); // izpis lihih števil
}
}
The če izjava uporablja nadaljevati ključno besedo, ki določa, da naj zanka preskoči števila, deljiva z dve.
Poleg tega lahko izstopite iz zanke for z odmor ključna beseda. Zanka se konča, ko naleti na odmor ključna beseda.
fnglavni() {
za št v1..=10 {
če št == 5 {
odmor; // izhod iz zanke, ko je število enako 5
}
println!("{}", št.); // izpis številk od 1 do 4
}
}
The če stavek določa, da se mora zanka končati, ko je jaz spremenljivka je enaka pet.
Uporabite Rustove nadzorne strukture s podatkovnimi vrstami za obvladovanje jezika
Rust ponuja te prilagodljive nadzorne strukture za operacije na vgrajenih in prilagojenih vrstah podatkov. Te nadzorne strukture lahko uporabite za delovanje na sestavljenih in sestavljenih podatkovnih strukturah, kot so polja, vektorji, strukture in enumi.
Rust ponuja tudi strukture. Strukture so podatkovne strukture, ki združujejo povezane vrednosti v en sam objekt. Podobni so razredom v objektno usmerjenih jezikih in na njih lahko celo definirate metode.