11.向量vector.rs
生活随笔
收集整理的這篇文章主要介紹了
11.向量vector.rs
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
/*
向量(Vector)是一個(gè)存放多值的單數(shù)據(jù)結(jié)構(gòu),該結(jié)構(gòu)將相同類型的值線性的存放在內(nèi)存中。
向量是線性表,在 Rust 中的表示是 Vec<T>。
向量的使用方式類似于列表(List),我們可以通過這種方式創(chuàng)建指定類型的向量:
*/fn test_1() {let vector: Vec<i32> = Vec::new(); // 創(chuàng)建類型為 i32 的空向量let vector = vec![1, 2, 4, 8]; // 通過數(shù)組創(chuàng)建向量println!("{:?}", vector);
}//向量只有 push 方法來追加單個(gè)元素
fn test_2() {let mut vector = vec![1, 2, 4, 8];vector.push(16);vector.push(32);vector.push(64);println!("{:?}", vector);
}//append 方法用于將一個(gè)向量拼接到另一個(gè)向量的尾部
fn test_3() {let mut v1: Vec<i32> = vec![1, 2, 4, 8];let mut v2: Vec<i32> = vec![16, 32, 64];v1.append(&mut v2);println!("{:?}", v1);
}//get 方法用于取出向量中的值:
fn test_4() {let mut v = vec![1, 2, 4, 8];println!("{}",//因?yàn)橄蛄康拈L(zhǎng)度無法從邏輯上推斷,get 方法無法保證一定取到值,所以 get 方法的返回值是 Option 枚舉類,有可能為空。這是一種安全的取值方法,但是書寫起來有些麻煩match v.get(10) {Option::Some(value) => value.to_string(),Option::None => "None".to_string(),});//如果你能夠保證取值的下標(biāo)不會(huì)超出向量下標(biāo)取值范圍,你也可以使用數(shù)組取值語法:println!("{}", v[1]);
}//遍歷向量
fn test_5() {let v = vec![100, 32, 57];for i in &v {print!("{} ", i);}println!();//如果遍歷過程中需要更改變量的值:let mut v = vec![100, 32, 57];for i in &mut v {*i += 50;}for i in &v {print!("{} ", i);}println!();
}fn main() {test_1();test_2();test_3();test_4();test_5();
}
?
超強(qiáng)干貨來襲 云風(fēng)專訪:近40年碼齡,通宵達(dá)旦的技術(shù)人生總結(jié)
以上是生活随笔為你收集整理的11.向量vector.rs的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 10.切片slice.rs
- 下一篇: 12.映射表map.rs