Menu
CoddyTech

使用 push 添加元素

本课属于 Coddy Rust 学习旅程的“逻辑与流程”单元。第 9 课,共 66 课。

有了向量后,你通常会想向其中添加新元素。Rust 提供了 .push() 方法,用于在向量末尾添加元素。这是你对向量执行的最常见操作之一。

下面介绍如何使用 .push():

let mut numbers = Vec::new();
numbers.push(10);
numbers.push(20);
numbers.push(30);

注意 mut 关键字,这一点很重要!添加元素会改变向量的内容,因此必须将向量声明为可变的。没有 mut,Rust 不允许你修改向量。

.push() 方法总是将新元素添加到向量的末尾。每次调用 .push(),向量的长度都会增加 1:

let mut fruits = Vec::new();
fruits.push("apple");
fruits.push("banana");
// fruits 现在包含 ["apple", "banana"]

你也可以从一个已有元素的向量开始,然后继续向其中添加元素:

let mut scores = vec![85, 92];
scores.push(78); // scores 现在是 [85, 92, 78]
challenge icon

挑战

简单

你会收到三个数字作为输入,每个数字单独占一行。读取这些数字,将它们转换为整数,并使用 .push() 方法将它们添加到向量中。添加完三个数字后,每行打印向量中的一个元素。

要求:

  • 创建一个空的可变向量
  • 从输入中读取三个数字,并将每个数字转换为整数
  • 使用 .push() 将每个数字添加到向量中
  • 每行打印向量中的一个元素

输入:三个整数,每个整数单独占一行

输出:每行打印向量中的一个元素

亲手试试

use std::io;

fn main() {
    // 从输入中读取三个数字
    let mut input1 = String::new();
    io::stdin().read_line(&mut input1).expect("Failed to read line");
    let num1: i32 = input1.trim().parse().expect("Invalid input");
    
    let mut input2 = String::new();
    io::stdin().read_line(&mut input2).expect("Failed to read line");
    let num2: i32 = input2.trim().parse().expect("Invalid input");
    
    let mut input3 = String::new();
    io::stdin().read_line(&mut input3).expect("Failed to read line");
    let num3: i32 = input3.trim().parse().expect("Invalid input");
    
    // TODO:在下方编写你的代码
    // 创建一个可变向量,并将这三个数字添加进去
    
    
    // 将向量中的每个元素分别打印在单独的一行
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

逻辑与流程中的所有课

自己练习: Rust 在线编译器