Rust复合类型之元组

元组是一个有着固定(元素)长度的列表,每个元素的类型有可能是不同的。类型和元素都用小括号括起来,它们之间用逗号隔开。例如:

rust 复制代码
fn main() { 
     let itemname: (i32, f64, u8) = (500, 6.4, 1);
}

元组可以使用.来访问其中的元素。

rust 复制代码
fn main() {
    let test: (i32, f64, u8) = (500, 6.4, 1);
    
    // 元组使用.运算符访问其元素,下标从0开始,注意语法
    let number1 = test.0;
    let number2  = test.1;
    let number3 = test.2;
}

与数组的相同点是,它俩都有固定元素个数的,在运行时不可伸缩。与数组的不同点是,元组的每个元素的类型或许不一样。元组在 Rust 中很有用,因为它可以用于返回函数最后的值,相当于把多个想返回的值捆绑在一起,一次性返回。

当没有任何元素的时候,元组退化成 (),就叫做unit类型,是 Rust 中一个非常重要的基础类型和值,unit类型唯一的值实例就是 (),与其类型本身的表示相同。比如一个函数没有返回值的时候,它实际默认返回的是这个unit值。

相关推荐
NutShell Wang5 小时前
Rust 1.97 实战迁移:v0 符号重整、Cargo 警告治理与位运算新 API
人工智能·后端·性能优化·rust·vibe coding
进哥AI研习社5 小时前
AtomCode 源码编译与二次开发入门:从 Clone 仓库到自定义 Agent 工具的完整指南
rust·二次开发·源码编译·atomcode·agent 工具·tool 扩展·ai 编码智能体
程序员爱钓鱼8 小时前
Rust 泛型 Generics详解:编写可复用且类型安全的代码
后端·面试·rust
SomeB1oody20 小时前
【RustyML入门】6.0. 数学工具
开发语言·后端·机器学习·rust·教程
今天AI了吗1 天前
从聊天到委派:AI Agent 如何推进长期任务
数据库·人工智能·python·sql·rust
梦醒沉醉1 天前
std1.97.1——fmt模块总览
rust
SomeB1oody1 天前
【RustyML入门】5.3. 聚类指标
开发语言·后端·机器学习·rust·教程
雾沉川1 天前
Rust IDE 选型:除 VS Code 之外,RustRover 非商业场景可免费使用
ide·vscode·rust
特立独行的猫a1 天前
Rust + Tauri实现一棵「习惯树」:创意应用 从 Grove 的灵感说起
开发语言·后端·rust·tauri·习惯树·创意应用
程序员爱钓鱼1 天前
Go 编程实战:Map——使用 Key-Value 管理键值数据
后端·rust·go