Teiesugused lugejad aitavad MUO-d toetada. Kui teete ostu meie saidil olevate linkide abil, võime teenida sidusettevõtte komisjonitasu. Loe rohkem.

Rust on staatiliselt tipitud kaasaegne programmeerimiskeel, mis on loodud jõudluse, töökindluse ja turvalisuse tagamiseks. Nagu teisteski staatiliselt trükitud keeltes, deklareerite kompileerimise ajal Rusti andmetüübid. See muudab tüübivigade tuvastamise enne koodi käivitamist lihtsamaks.

Rust pakub skalaar-, liit-, viitetüüpe, struktuure, enumeid ja stringe. Selle tüübijäreldamine pakub funktsioone kokkuvõtliku koodi kirjutamiseks, säilitades samal ajal staatiliselt trükitud keele ohutuse.

Täisarvud roostes

Rust pakub märgistatud ja märgita täisarvude tüüpe, mis on klassifitseeritud bittide arvu alusel. Märgiga täisarvude tüübid on i8, i16, i32ja i64 esindavad vastavalt 8-bitised, 16-bitised, 32-bitised ja 64-bitised märgiga täisarvud. See toetab ka märgita täisarvude tüüpe u8, u16, u32ja u64, mis esindab 8-bitiseid, 16-bitiseid, 32-bitiseid ja 64-bitisi märgita täisarve.

instagram viewer
// märgiga täisarvud
lase a: i8 = -10;
lase b: i16 = -2048;
lase c: i32 = -2147483648;
lase d: i64 = -9223372036854775808;

// märgita täisarvud
lase e: u8 = 255;
lase f: u16 = 65535;
lase g: u32 = 4294967295;
lase h: u64 = 18446744073709551615;

Rust kasutab i32 vaikimisi täisarvuliteraalide jaoks.

Rooste ujukoma tüübid

Rooste annab f32 ja f64 ujukomatüüpidena, mis esindavad ühe- ja topelttäpsusega ujukomaarve. The f32 tüüp kasutab väärtuste salvestamiseks 32 bitti ja f64 tüüp kasutab 64 bitti.

Rusti ujukomaarvud järgivad IEEE 754 ujukoma aritmeetika standardit.

lase a = 3.14159265358979323_f32;
lase b = 2.718281828459045235_f64;

Rust Booleanide kasutamine

Rooste pakub a bool tüüpi esindama tõsi või vale väärtused. Tõeväärtusi kasutatakse sageli tingimuslikes ja kontrollvoolausetes programmi otsuste tegemisel.

lase muutuja_1: bool = tõsi;
lase muutuja_2: bool = vale;

Saate võrrelda tõeväärtusi võrdusoperaatoriga, ==ja ebavõrdsuse operaator, !=. Rust ei määratle võrdlusoperaatoreid, , <=, ja >=, jaoks bool väärtused.

lase muutuja_1: bool = tõsi;
lase muutuja_2: bool = vale;

if muutuja_1 == muutuja_2 {
println!("muutuja_1 on võrdne muutujaga_2");
} muidukui muutuja_1 != muutuja_2 {
println!("muutuja_1 ei võrdu muutujaga_2");
}

Char tüüp

Rooste char tüüp tähistab ühte Unicode'i skalaarväärtust, mis võib tähistada mis tahes tähemärki Unicode'i standard. Saate määrata a char väärtus üksikute jutumärkide abil.

// Char väärtuse deklareerimine
lase c = 'a';

The char tüüp on abiks Rusti emotikonidega töötamiseks.

Tuples Roostes

Korpuse andmestruktuur võimaldab rühmitada rohkem kui ühe väärtuse üheks liitväärtuseks. Need väärtused võivad olla sama tüüpi või erinevat tüüpi. Kortereid saate deklareerida, kirjutades need komadega eraldatud väärtuste loendina, mis on ümbritsetud sulgudega.

Siit saate teada, kuidas saate deklareerida 32-bitiste täisarvude, stringide ja float64 väärtustega korteeži.

lase tup: (i32, &str, f64) = (500, "Tere", 3.14);

Kordadel on fikseeritud pikkus ja saate neid kasutada funktsioonilt mitme väärtuse tagastamiseks või funktsioonidele mitme väärtuse edastamiseks ühe argumendina.

Korteri üksikutele elementidele pääsete juurde, struktureerides selle mustri sobitamise abil või pääsedes otse juurde üksikutele elementidele, kasutades punkti (.) süntaksit ja indeksit.

Mustri sobitamise abil pääsete juurde struktuuri üksikutele elementidele järgmiselt.

lase minu_korter = (10, "Tere, Maailm!", vale);

lase (x, y, z) = minu_korter;

println!("Esimene element on: {}", x);
println!("Teine element on: {}", y);
println!("Kolmas element on: {}", z);

Üksikutele elementidele pääsete juurde punktimärgistuse abil järgmiselt.

lase minu_korter = (10, "Tere, Maailm!", vale);

println!("Theesitekselementon: {}", minu_korter.0);
println!("Theteisekselementon: {}", minu_korter.1);
println!("Thekolmandakselementon: {}", minu_korter.2);

Kordad on väga kasulikud seotud andmete rühmitamisel üheks väärtuseks. Need võivad parandada ka teie koodi loetavust, kui kasutate neid säästlikult.

Massiivid roostes

Massiiv on kindla pikkusega sama tüüpi elementide kogum. Kirjutate Rust-massiivid nurksulgudega väärtuste loendina, mis on eraldatud komadega.

Rustis massiivide deklareerimiseks tehke järgmist.

lase arr = [1, 2, 3, 4, 5];

Te ei saa massiivi elementide arvu pärast deklareerimist muuta, kuid saate indekseerimise abil juurde pääseda massiivi üksikutele elementidele, neid muuta ja nendega manipuleerida.

lase mut my_array = [1, 2, 3, 4, 5];

// Juurdepääs elementidele
println!("Theesitekselementon: {}", minu_massiiv[0]);

// Elementide muutmine
minu_massiiv[0] = 100;
println!("Theesitekselementpärastmodifikatsioonon: {}", minu_massiiv[0]);

// Massiivi loomine ja elementidega manipuleerimine
jaoksisisse 0..my_array.len() {
minu_massiiv[i] *= 2;
}

// massiivi printimine
println!("Massiiv pärast manipuleerimist: {:?}", minu_massiiv);

Roostemassiivid on virnale salvestatud ja neil on külgnev mälujaotus, nii et massiivi elementidele juurdepääs on kiire ja tõhus. See muudab massiivid sobivaks olukordades, kus on vaja salvestada ja töödelda palju elemente.

Roosteviiludega töötamine

Lõik on andmestruktuur, mis võimaldab viidata kogumi külgnevale elementide jadale. Viilud on esindatud tähisega &[T] tüüp, kus T on viilu salvestatud elementide tüüp.

fn peamine(){
// deklareerige massiiv
lase minu_massiiv = [1, 2, 3, 4, 5];

// loob massiivist lõigu
lase my_slice = &minu_massiiv[1..3];

// prindi viil
println!("Slice: {:?}", minu_lõik);
}

Pange tähele, kuidas vahemiku süntaks, .., eraldab massiivist lõigu, kasutades algusindeksit ja lõpust ühe võrra suuremat indeksit:

Viilud on dünaamilised, nii et Rust saab nende pikkuse käitusajal määrata. Samuti saate viilud funktsioonidele argumentidena edastada, ilma et oleks vaja hunnikut jaotada.

Tavaliselt kasutate lõikusid stringitoimingute jaoks ja andmete alamhulkade edastamiseks funktsioonidele. Need on võimas ja tõhus tööriist kogude haldamiseks Rustis, pakkudes massiividele paindlikumat alternatiivi.

Saate Rustis luua WebAssembly-toega esiserva veebirakendusi

Andmetüüpide tundmine on teie Rooste teekonnal ülioluline, kuna kasutate neid rakenduste loomisel enamiku toimingute jaoks.

WebAssembly on madala tasemega kahendvorming, mis töötab tänapäevastes veebibrauserites ja millel on peaaegu loomulik jõudlus. See võimaldab teil kirjutada koodi paljudes erinevates keeltes ja edastada see WebAssemblysse.

WebAssembly võtab Rusti kaudu kasutusele. On palju raamistikke, nagu Yew, Sycamore ja Seed, mida saate kasutada Rustiga WebAssembly-toega esiservade loomiseks.