0Pricing
Learn Rust Coding · Ders

Vektör Oluşturma ve Doldurma

Vec'ler oluşturup öğeler ekleyin.

Vektör Oluşturma ve Doldurma, CoddyKit'te ücretsiz bir Learn Rust Coding dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn Rust Coding öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn Rust Coding kursu toplamda 4 dersten oluşur.

What Is a Vector?

Bir vektör, hepsi aynı türden değerlerden oluşan büyütülebilir bir listedir. Sabit boyutlu bir dizinin aksine, programınız çalışırken bir vektör küçülebilir veya büyüyebilir.

Rust'ta bu tür Vec<T> olarak yazılır; burada T, tamsayılar için Vec<i32> gibi, içinde tuttuğu elemanın türüdür.

An Empty Vector

Vec::new() ile yeni, boş bir vektör oluşturabilirsiniz. Henüz hiçbir değere sahip olmadığı için Rust eleman türünü tahmin edemez, bu yüzden genellikle bunu belirtirsiniz (tür ataması yaparsınız).

Burada Rust'a bu vektörün i32 tamsayıları tutacağını söylüyoruz.

fn main() {
    let v: Vec<i32> = Vec::new();
    println!("len = {}", v.len());
}

The vec! Macro

Başlangıç değerleriyle bir vektör oluşturmanın en hızlı yolu vec! makrosudur. Değerleri köşeli parantezler içine listeleyin.

Rust, eleman türünü çıkarım yapmak için değerlere bakar, bu nedenle burada herhangi bir tür belirtimine gerek yoktur.

fn main() {
    let nums = vec![10, 20, 30];
    println!("{:?}", nums);
}

Printing a Vector

Bir vektörün tamamı normal {} ile değil, hata ayıklama biçimlendiricisi {:?} ile yazdırılır. Hata ayıklama biçimi, değerleri köşeli parantezler içinde gösterir.

Bir vektör büyük olduğunda, anlaşılır ve çok satırlı bir yerleşim için {:#?} kullanın.

fn main() {
    let names = vec!["Ann", "Bo", "Cy"];
    println!("{:?}", names);
}

Pushing Values

Bir vektörün sonuna bir değer eklemek için push çağrısı yapın. Vektör, ekleme işlemi onu değiştirdiği için mut olarak bildirilmelidir.

Her push bir öğe ekleyerek uzunluğu bir artırır.

fn main() {
    let mut v = Vec::new();
    v.push(1);
    v.push(2);
    v.push(3);
    println!("{:?}", v);
}

Type From the First Push

Vec::new() ile başlayıp herhangi bir tür belirteci kullanmadığınızda Rust, eleman türünü öğrenmek için ilk push işlemਿni bekler.

Aşağıda, 3.5 eklemek Rust'a bunun bir Vec<f64> olduğunu söyler. Sonraki tüm değerlerin bu türle eşleşmesi gerekir.

fn main() {
    let mut prices = Vec::new();
    prices.push(3.5);
    prices.push(9.0);
    println!("{:?}", prices);
}

Filling With Repeats

vec! makrosu bir değeri tekrarlayabilir. Bu değerin count kez tekrarlandığı bir vektör oluşturmak için vec![value; count] yazın.

Bu, sıfırlardan veya varsayılan değerlerden oluşan bir liste oluşturmak için kullanışlıdır.

fn main() {
    let zeros = vec![0; 5];
    println!("{:?}", zeros);
}

Filling in a Loop

Bir döngünün içine eleman ekleyerek (pushing) bir vektör doldurabilirsiniz. Burada 1'den 4'e kadar olan sayıların karelerini ekliyoruz.

Boş başlayıp ilerledikçe eleman eklemek, değerler hesaplandığında yaygın bir desendir.

fn main() {
    let mut squares = Vec::new();
    for n in 1..=4 {
        squares.push(n * n);
    }
    println!("{:?}", squares);
}

Capacity vs Length

Uzunluk, bir vektörün şu anda kaç öğe tuttuğunu gösterir. Kapasite ise bellek büyümesi gerekmeden önce ne kadar yer ayırdığını belirtir.

Ekleme yapacağınız öğe sayısını yaklaşık olarak biliyorsanız, Vec::with_capacity(n) önceden alan ayırır ve tekrarlayan yeniden tahsisleri önler.

fn main() {
    let mut v = Vec::with_capacity(10);
    v.push(1);
    println!("len {}, cap {}", v.len(), v.capacity());
}

From an Array

Bir diziyi (array) bir vektöre (vector) dönüştürebilirsiniz. Basit bir yol, dizinin elemanlarını sahipli yeni bir vektöre kopyalayan .to_vec() yöntemidir.

Bu, sabit verilerle başlayıp daha sonra bunların büyümesine ihtiyaç duyduğunuz durumlarda yararlıdır.

fn main() {
    let arr = [1, 2, 3];
    let v = arr.to_vec();
    println!("{:?}", v);
}

Checking If Empty

Bir vektörün hiç elemanı olup olmadığını kontrol etmek için is_empty() kullanın. Uzunluğu sıfırla karşılaştırmaktan daha net olan bir bool döndürür.

Bu, ilk elemanı okumadan önce iyi bir korumadır.

fn main() {
    let v: Vec<i32> = Vec::new();
    if v.is_empty() {
        println!("nothing here yet");
    }
}

Quick Check

Vektör oluşturma ve doldurma konusundaki bilginizi test edin.

Recap

Vec::new() ve vec! makrosunu kullanarak vektörler oluşturmayı ve bunları push, tekrar, döngüler ve to_vec() ile doldurmayı öğrendiniz.

Ayrıca uzunluk ile kapasite arasındaki farkı ve boş olup olmadığını nasıl kontrol edeceğinizi gördünüz. Sonraki bölümde vektör değerlerini okuyacak ve bunlar üzerinde döngü kuracaksınız.

Sıkça Sorulan Sorular

“Vektör Oluşturma ve Doldurma” dersi ücretsiz mi?

Evet — “Vektör Oluşturma ve Doldurma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn Rust Coding kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn Rust Coding kursu toplamda 4 dersten oluşur.

“Vektör Oluşturma ve Doldurma” dersinde ne öğreneceğim?

Vec'ler oluşturup öğeler ekleyin. Learn Rust Coding ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Learn Rust Coding öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Learn Rust Coding, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“Vektör Oluşturma ve Doldurma” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Learn Rust Coding dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Learn Rust Coding dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Vektör Oluşturma ve Doldurma
  2. Dizinleme ve Yineleme
  3. Büyütme ve Küçültme
  4. Struct Vektörleri
← Learn Rust Coding Sayfasına Dön