Rust massivlar


ULASHISH

Massivlar

Massivlar har bir qiymat uchun alohida o‘zgaruvchi e’lon qilish o‘rniga, bir nechta qiymatni bitta o‘zgaruvchida saqlash uchun ishlatiladi.


Massiv yaratish

Massivni kvadrat qavslar [ ] yordamida yaratishingiz va qiymatlarni vergul bilan ajratishingiz mumkin.

Eslatma: Barcha qiymatlar bir xil ma’lumot tipida ekanligiga ishonch hosil qiling (quyidagi misolda butun sonlar):

Misol

let numbers = [1, 2, 3, 4, 5];

Bu beshta butun sondan iborat massiv yaratadi.


Massiv elementlariga murojaat qilish

Massiv elementiga murojaat qilish uchun uning indeks raqamini ko‘rsating.

Massiv indekslari 0 dan boshlanadi: [0] birinchi element. [1] ikkinchi element va hokazo.

Ushbu operator (ko‘rsatma) numbers massividagi birinchi element [0] qiymatiga murojaat qiladi:

Misol

let numbers = [1, 2, 3, 4, 5]; println!("The first number is: {}", numbers[0]);
O‘zingiz sinab ko‘ring »

Massiv qiymatlarini o‘zgartirish

Muayyan element qiymatini o‘zgartirish uchun indeks raqamini ko‘rsating va yangi qiymat tayinlang.

Massivni o‘zgaruvchan (mutable) qilishni unutmang (mut kalit so‘zi yordamida):

Misol

let mut numbers = [1, 2, 3, 4, 5]; numbers[0] = 10; println!("The new first number is: {}", numbers[0]);
O‘zingiz sinab ko‘ring »


Massiv uzunligi

.len() metodi yordamida massivdagi elementlar sonini olishingiz mumkin:

Misol

let numbers = [1, 2, 3, 4, 5]; println!("This array has {} elements.", numbers.len());
O‘zingiz sinab ko‘ring »

Massiv bo‘ylab sikl

for sikli yordamida massiv elementlarini aylanib chiqishingiz mumkin.

Misol

let fruits = ["apple", "banana", "orange"]; for fruit in fruits {   println!("I like {}.", fruit); }
O‘zingiz sinab ko‘ring »

Butun massivni chiqarish

Eslatma: Butun massivni chiqarishda println! ichida {:?} ishlatishingiz kerak:

Misol

let numbers = [1, 2, 3, 4, 5]; println!("{:?}", numbers);
O‘zingiz sinab ko‘ring »

Agar massivdan faqat bitta elementni chiqarayotgan bo‘lsangiz, {} ishlatishingiz mumkin.

Misol

let numbers = [1, 2, 3, 4, 5]; println!("{}", numbers[0]);
O‘zingiz sinab ko‘ring »

Xulosa qilib aytganda:

Massivdan bitta elementni chiqarayotganda {} ishlating.

Butun massivni chiqarayotganda {:?} ishlating.

Agar nima uchun sikl ichida (ushbu sahifadagi oldingi misolda) {:?} ishlatmaganimizga hayron bo‘layotgan bo‘lsangiz, buning sababi shundaki, siklda siz massivdagi har bir qiymatni alohida chiqarasiz. Har bir qiymat string bo‘lgani uchun {} ishlaydi. Lekin butun massivni chiqarish uchun {:?} ishlatishingiz kerak.

Yaxshi qoida shunday: stringlar, sonlar va boolean qiymatlar kabi oddiy tiplar uchun {}, massivlar va vektorlar kabi ma’lumotlar tuzilmalari uchun esa - butun tuzilmani chiqarayotganda - {:?} ishlating.


Qat’iy o‘lcham (massivlar) va dinamik o‘lcham (vektorlar)

Rustda massivlar haqida gap ketganda qat’iy o‘lcham (fixed size) va dinamik o‘lcham (dynamic size) atamalarini tez-tez eshitasiz.

Buning sababi Rustdagi massivlar qat’iy o‘lchamga ega, ya’ni massiv yaratilgandan so‘ng unga element qo‘shib yoki undan element olib tashlab bo‘lmaydi:

Misol

// An array with 3 elements let mut cars = ["Volvo", "BMW", "Ford"]; // Trying to add another element (a fourth element) to the cars array will result in an error cars[3] = "Mazda";   // Error: index out of bounds
O‘zingiz sinab ko‘ring »

Vektorlar - dinamik o‘lchamga misol

Massiv elementlarini qo‘shish va olib tashlashni talab qiladigan amallar uchun o‘lchamini o‘zgartirish mumkin bo‘lgan massivlar - vektorlardan foydalanishingiz mumkin.

Vektorning o‘lchami dinamik, ya’ni u kerak bo‘lganda kattalashishi va kichrayishi mumkin.

Vektor yaratish uchun vec! makrosidan foydalanishingiz mumkin:

Misol

// A vector with 3 elements let mut cars = vec!["Volvo", "BMW", "Ford"]; // Add another element cars.push("Mazda"); println!("{:?}", cars); // ["Volvo", "BMW", "Ford", "Mazda"]
O‘zingiz sinab ko‘ring »

Bu vektorlar bilan qisqacha tanishuv edi. Ular haqida keyingi bobda batafsil bilib olasiz.


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!