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

相关推荐
BigNiu6 小时前
rust遮蔽(shadow)示例代码
rust
程序员的那些事_6 小时前
微软用 Rust 开发了一个库操作系统 LiteBox
开发语言·后端·rust
键盘鼓手苏苏7 小时前
Flutter for OpenHarmony:cider 自动化版本管理与变更日志生成器(发布流程标准化的瑞士军刀) 深度解析与鸿蒙适配指南
运维·开发语言·flutter·华为·rust·自动化·harmonyos
IT 行者7 小时前
ZeroClaw:Rust 驱动的下一代 AI Agent 基础设施
开发语言·人工智能·rust
IT 行者7 小时前
AI Agent 平台横评:ZeroClaw vs OpenClaw vs Nanobot
开发语言·人工智能·rust
鸿乃江边鸟7 小时前
Spark Datafusion Comet 向量化Rust Native--Native算子指标如何传递到Spark UI上展示
rust·spark·native
BigNiu7 小时前
rust里mut 和遮蔽之间的区别
开发语言·rust
码农葫芦侠8 小时前
Rust学习教程1:搭建 Rust 环境
rust
键盘鼓手苏苏8 小时前
Flutter for OpenHarmony:dart_ping 网络诊断的瑞士军刀(支持 ICMP Ping) 深度解析与鸿蒙适配指南
开发语言·网络·flutter·华为·rust·harmonyos
班公湖里洗过脚8 小时前
《通过例子学Rust》第18章 错误处理
rust