rust元组

一、元组定义

(一)语法

复制代码
let tuple_name: (data_type1, data_type2, data_type3) = (value1, value2, value3);

可以不显式指定类型

复制代码
let tuple_name = (value1,value2,value3);

使用一对小括号 () 把所有元素放在一起,元素之间使用逗号 , 分隔。

范例

复制代码
fn main() {
     let tuple:(i32,f64,u8) = (-325,4.9,22);
     println!("{:?}",tuple);
}
编译运行结果如下
(-325, 4.9, 22)

没有元素的元组叫单元。单元类型和单元值都是()。

二、使用元组

(一)访问元组中的单个元素

我们可以使用 元组名.索引数字 来访问元组中相应索引位置的元素。索引从 0 开始。

范例

复制代码
fn main() {
     let tuple:(i32,f64,u8) = (-325,4.9,22);
     println!("integer is :{:?}",tuple.0);
     println!("float is :{:?}",tuple.1);
     println!("unsigned integer is :{:?}",tuple.2);
}
编译运行结果如下
integer is :-325
float is :4.9
unsigned integer is :2

(二)元组作为函数的参数

语法

复制代码
fn function_name(tuple_name: (i32, bool, f64)){}

范例

复制代码
fn main(){
     let b:(i32,bool,f64) = (110,true,10.9);
     print(b);
}
// 使用元组作为参数
fn print(x:(i32,bool,f64)){
     println!("Inside print method");
     println!("{:?}",x);
}
编译运行结果如下
Inside print method
(110, true, 10.9)

(三)元组解构批量赋值

解构批量赋值就是把元组中的每一个元素分别赋值给变量。

语法格式如下

复制代码
let (a, b, c) = (value1, value2, value3);
let (a, b, c) = tup;

例子

复制代码
let (age,is_male,cgpa) = (30,true,7.9);
let tup = (500, 6.4, 1);
let (x, y, z) = tup;
println!("The value of y is: {y}");
相关推荐
web打印社区10 小时前
Windows 网页静默打印设置步骤:客户端、防火墙与联调清单
开发语言·前端·javascript·chrome·pdf·ecmascript
小师兄吃牛肉10 小时前
什么是R语言?如何快速学习R语言
开发语言·学习·r语言
程序猿乐锅11 小时前
【黑马点评 | 第十一篇】关注 Feed 流实现
java·数据库·redis·分布式·后端·缓存·maven
Evand J11 小时前
【MATLAB例程】三维快速扩展随机树(RRT)路径规划与到达角(AOA)、到达时间差(TDOA)融合定位,附下载链接
开发语言·matlab·代码·定位·例程
执明wa11 小时前
Android RecyclerView 实战:点击频道栏切换对应内容
android·开发语言·windows·microsoft·android studio
开开心心就好11 小时前
图片白底怎么去掉?抠图工具抠完背景透明
java·服务器·开发语言·pdf·ocr·散列表·启发式算法
朝朝辞暮i11 小时前
C++ 第 22 课:const —— 不允许随便修改的数据
开发语言·c++·算法
web打印社区11 小时前
JS 静默打印怎么做:纯前端为什么不行,以及最小可跑通写法
开发语言·前端·javascript·websocket·网络协议·http·pdf
大圣编蚕11 小时前
C语言怎么写小游戏?从零开始做一个贪吃蛇
c语言·开发语言
东方芷兰11 小时前
Agent 技术摘要 05 —— BP、SaaS、B2B、C2B、B2C
java·笔记·python·语言模型·自然语言处理