Rust元组(Tuple)

/ / Rust元组(Tuple)

元组是复合数据类型,标量类型只能存储一种类型的数据,如一个i32变量只能存储一个整数值。在复合类型中,我们可以存储多个值,并且可以是不同类型。

元组的长度是固定的,一旦声明,它们就无法增长或缩小,元组索引从 0 开始。

Tuple- 语法

//语法1
let tuple_name:(data_type1,data_type2,data_type3)=(value1,value2,value3);

//语法2
let tuple_name=(value1,value2,value3);

以下示例在元组中显示值。

fn main() {
   let tuple:(i32,f64,u8)=(-325,4.9,22);
   println!("{:?}",tuple);
}

println!(" {}",tuple)语法不能用于显示元组中的值。这是因为元组是复合类型。使用 println!(" {:?}",tuple_name)语法在元组中打印值。

(-325, 4.9, 22)

以下示例在元组中打印单个值。

无涯教程网

链接:https://www.learnfk.comhttps://www.learnfk.com/rust/rust-tuple.html

来源:LearnFk无涯教程网

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 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)

Tuple- 构造解析

构造解析是Rust的一个特征,其中我们拆开元组的值,这是通过将元组分配给不同的变量来实现的。

考虑以下示例-

fn main(){
   let b:(i32,bool,f64)=(30,true,7.9);
   print(b);
}
fn print(x:(i32,bool,f64)){
   println!("Inside print method");
   let (age,is_male,cgpa)=x; //将数据分配给一个元组
   distinct variables
   println!("Age is {} , isMale? {},cgpa is 
   {}",age,is_male,cgpa);
}

变量 x 是分配给let语句的元组。每个变量-age,is_male和cgpa将在元组中包含相应的值。

Inside print method
Age is 30 , isMale? true,cgpa is 7.9

祝学习愉快! (发现内容有误?请选中要编辑的内容 -> 右键 -> 修改 -> 提交!帮助我们改进教程质量)

精选教程推荐

👇 以下精选教程可能对您有帮助,拓展您的技术视野

TonyBai · Go语言进阶课 -〔Tony Bai〕

Rust 语言从入门到实战 -〔唐刚〕

说透区块链 -〔自游〕

如何落地业务建模 -〔徐昊〕

Go 语言项目开发实战 -〔孔令飞〕

技术面试官识人手册 -〔熊燚(四火)〕

etcd实战课 -〔唐聪〕

SRE实战手册 -〔赵成〕

研发效率破局之道 -〔葛俊〕

📝 好记忆不如烂笔头,留下您的学习笔记吧!

暂无学习笔记,成为第一个分享的人吧!

您的笔记将帮助成千上万的学习者