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值。

相关推荐
班公湖里洗过脚3 小时前
《通过例子学Rust》第13章 属性
rust
魔力军4 小时前
Rust学习Day5:结构体介绍和使用
开发语言·学习·rust
好家伙VCC5 小时前
**发散创新:用 Rust构建多智能体系统,让分布式协作更高效**在人工智能快速演进的今天,**多智能体系统(
java·人工智能·分布式·python·rust
艾尔aier16 小时前
mini-shell成果展示
rust
班公湖里洗过脚19 小时前
《通过例子学Rust》第10章 模块
rust
魔力军20 小时前
Rust学习Day4: 所有权、引用和切片介绍
开发语言·学习·rust
Sheffi6621 小时前
Swift 所有权宏 `~Copyable` 深度解析:如何在 Swift 中实现类似 Rust 的内存安全模型?
rust·ssh·swift
Rust语言中文社区1 天前
【Rust日报】 confidential-ml-transport - 机密机器学习传输
开发语言·人工智能·后端·机器学习·rust
中国胖子风清扬1 天前
Rust 桌面应用开发的现代化 UI 组件库
java·后端·spring·ui·rust·kafka·web application
Rust语言中文社区1 天前
【Rust日报】 Rust 错误源追踪示例
开发语言·后端·rust