Rust 程式設計中的陣列
陣列是一種資料結構,用於包含相同型別T的物件。這些物件儲存在連續的記憶體位置。
在 Rust 中,陣列是透過使用 [ ] 括號建立的。重要的是,陣列的大小必須在編譯時已知。此外,與 Java 和 C++ 等其他語言不同,陣列的長度是 Rust 中其型別的一部分。
[T; length].
這意味著簽名為 [i32,4] 的陣列與簽名為 [i32,5] 的陣列不同。
陣列可以是不可變的,並且有很多方法可以建立這樣的陣列。
沒有資料型別的陣列
我們可以建立陣列,而無需為其提供任何特定的資料型別。編譯器將自行解釋型別。
示例
fn main() { let arr = [1,2,3]; println!("The array is {:?}", arr); println!("The length of the array is: {}", arr.len()); }
輸出
The array is [1, 2, 3] The length of the array is: 3
具有資料型別和大小的陣列
我們可以定義我們希望在陣列中包含的資料型別以及陣列的大小,如下所示
示例
fn main() { let arr:[i32;4] = [1,2,3,4]; println!("The array is {:?}", arr); println!("Length of the array is: {}", arr.len()); }
輸出
The array is [1, 2, 3, 4] Length of the array is: 4
預設值型別
如果我們希望陣列包含單個預設值,則可以像下面所示那樣進行操作
示例
fn main() { let arr:[i32;5] = [1;5]; println!("The array is: {:?}", arr); println!("Length of the array is: {}", arr.len()); }
輸出
The array is: [1, 1, 1, 1, 1] Length of the array is: 5
Rust 中的可變陣列
我們也可以在 Rust 中建立可變陣列。請考慮以下示例
示例
fn main() { let mut arr:[i32;3] = [1,2,3]; println!("Original array: {:?}",arr); arr[1] = 0; arr[2] = 100; println!("Changed array: {:?}",arr); }
輸出
Original array: [1, 2, 3] Changed array: [1, 0, 100]
廣告