Vektorer
Matriser som kan vokse
Vektorer er en gratis leksjon i Lær Rust-programmering 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 Lær Rust-programmering, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Lær Rust-programmering inneholder totalt 4 leksjoner.
Hva er en vektor?
En Vec<T> er en vektor med variabel størrelse. I motsetning til en tabell med fast størrelse kan en vektor vokse eller krympe under kjøring.
Alle elementene må ha samme type T.
fn main() {
let v: Vec<i32> = Vec::new();
println!("empty vector with length {}", v.len());
}Opprette med vec!
Makroen vec! er den enkleste måten å opprette en vektor med startverdier på.
fn main() {
let numbers = vec![1, 2, 3, 4];
println!("{:?}", numbers);
}Legge til elementer
Bruk push for å legge til et element på slutten. Vektoren må være mut for at den skal kunne endres.
fn main() {
let mut v = Vec::new();
v.push(10);
v.push(20);
v.push(30);
println!("{:?}", v);
}Fjerne elementer
pop fjerner og returnerer det siste elementet pakket inn i en Option. Den returnerer None hvis vektoren er tom.
fn main() {
let mut v = vec![1, 2, 3];
let last = v.pop();
println!("removed {:?}, now {:?}", last, v);
}Tilgang via indeks
Bruk hakeparenteser for å indeksere en vektor, akkurat som en tabell. En indeks utenfor området fører til panic.
fn main() {
let v = vec!["a", "b", "c"];
println!("first {}", v[0]);
println!("third {}", v[2]);
}Trygg tilgang med get
Metoden get returnerer en Option i stedet for å utløse panic, og er derfor tryggere når indeksen er ukjent.
fn main() {
let v = vec![10, 20, 30];
match v.get(5) {
Some(x) => println!("found {}", x),
None => println!("no element there"),
}
}Iterere over en vektor
Gå gjennom elementene i en vektor med en for-løkke. Bruk & for å låne hvert element uten å ta eierskap.
fn main() {
let v = vec![100, 200, 300];
for item in &v {
println!("item {}", item);
}
}Endre under iterering
Iterer med &mut for å endre hvert element på stedet. Bruk dereferering med * for å endre verdien.
fn main() {
let mut v = vec![1, 2, 3];
for item in &mut v {
*item *= 10;
}
println!("{:?}", v);
}Vektorens lengde og tomhet
Bruk len() for å finne antallet elementer og is_empty() for å sjekke om det ikke finnes noen.
fn main() {
let v = vec![5, 6];
println!("len {} empty {}", v.len(), v.is_empty());
}Vanlige vektormetoder
Vektorer tilbyr mange hjelpefunksjoner:
contains— sjekker om et element finnes.first/last— henter første eller siste element som en Option.sort— sorterer elementene.
fn main() {
let mut v = vec![3, 1, 2];
v.sort();
println!("{:?} contains 2: {}", v, v.contains(&2));
}Summere med iteratorer
Kombiner vektorer med iterator-metoder for å beregne totalsummer på en kortfattet måte.
fn main() {
let v = vec![10, 20, 30, 40];
let total: i32 = v.iter().sum();
println!("total {}", total);
}Hurtigsjekk
Husk metoden som får en vektor til å vokse.
Oppsummering
Vektorer i Rust:
Vec<T>er en liste med variabel størrelse der alle elementene har samme type.- Opprett med
Vec::new()ellervec![...]. pushlegger til, ogpopfjerner fra slutten.- Få tilgang med
[]eller trygt medget. - Iterer med
for x in &v.
fn main() {
let mut scores = vec![80, 90];
scores.push(100);
let avg: i32 = scores.iter().sum::<i32>() / scores.len() as i32;
println!("average {}", avg);
}Lær deg Rust 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
- 39
- Leksjoner
- 144
Ofte stilte spørsmål
Er leksjonen «Vektorer» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Lær Rust-programmering, inkludert «Vektorer», 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 Lær Rust-programmering inneholder totalt 4 leksjoner.
Hva lærer jeg i «Vektorer»?
Matriser som kan vokse Du øver på Lær Rust-programmering 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 Lær Rust-programmering?
Ingen tidligere erfaring er nødvendig. Lær Rust-programmering 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 «Vektorer»?
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 Lær Rust-programmering-leksjonen?
Ja. Alle Lær Rust-programmering-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.