۷
کالکشنها (Collections)
کار با لیستها (Vector)، رشتهها (String) و دیکشنریها (HashMap).
Vector (`Vec`): آرایههای قابل رشد
وکتورها مثل آرایههایی هستن که اندازهشون میتونه بزرگ و کوچیک بشه. برای ذخیره کردن یه لیست از مقادیر همنوع استفاده میشن.
fn main() {
// ساختن یک وکتور جدید
let mut v: Vec<i32> = Vec::new();
// اضافه کردن مقدار
v.push(5);
v.push(6);
v.push(7);
// دسترسی به مقدار (به روش امن)
match v.get(2) {
Some(third) => println!("The third element is {}", third),
None => println!("There is no third element."),
}
// چرخیدن روی اعضای وکتور
for i in &v {
println!("{}", i);
}
}
HashMap: دادههای کلید-مقدار
هشمپها بهمون اجازه میدن مقادیر رو تحت یک کلید خاص ذخیره کنیم. مثل دیکشنریها در پایتون یا آبجکتها در جاوااسکریپت.
use std::collections::HashMap;
fn main() {
let mut scores = HashMap::new();
// اضافه کردن مقادیر
scores.insert(String::from("Blue"), 10);
scores.insert(String::from("Yellow"), 50);
// گرفتن مقدار با کلید
let team_name = String::from("Blue");
let score = scores.get(&team_name); // score یک Option<&i32> است
// چرخیدن روی اعضای هشمپ
for (key, value) in &scores {
println!("{}: {}", key, value);
}
}