首页 > 其他分享 >无涯教程-Rust - 元组(Tuple)

无涯教程-Rust - 元组(Tuple)

时间:2024-01-25 11:31:46浏览次数:28  
标签:Tuple i32 tuple 无涯 元组 print let println Rust

元组是复合数据类型,标量类型只能存储一种类型的数据,如一个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)

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

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

参考链接

https://www.learnfk.com/rust/rust-tuple.html

标签:Tuple,i32,tuple,无涯,元组,print,let,println,Rust
From: https://blog.51cto.com/u_14033984/9408988

相关文章

  • 无涯教程-Rust - 变量声明
    变量是程序可以操纵的命名存储,Rust中的变量与特定的数据类型相关联。数据类型决定变量的内存大小,可以存储在该内存中的值的范围以及可以对该变量执行的一组操作。命名规则在本节中,我们将学习命名变量的不同规则。变量的名称可以由字母,数字和下划线字符组成。必须以字母或下划......
  • 无涯教程-Rust - 数据类型
    Rust是一种静态类型的语言,Rust中的每个值都需要指定某种数据类型,编译器也可以根据分配给它的值自动推断变量的数据类型。声明变量使用let关键字声明一个变量。fnmain(){letcompany_string="LearnFk";//字符串类型letrating_float=4.5;//浮......
  • 无涯教程-Rust - 环境设置
    通过rustup(一种用于管理Rust版本和相关工具的基于控制台的工具),可以轻松安装Rust。在Windows上安装让我们学习如何在Windows上安装RUST。必须强制使用C++工具安装VisualStudio2013或更高版本,才能在Windows上运行Rust程序,首先,从此处下载VisualStudioVS2013Express......
  • 无涯教程-CSS3 - 用户界面
    用户界面属性允许您将任何元素更改为几个标准用户界面元素之一。CSS3用户界面中使用的一些常用属性。Sr.No.Value&Remark1appearance用于允许用户将元素制作为用户界面元素。2box-sizing允许用户以清晰的方式将元素固定在区域上。3icon用于在区域上提供图标。......
  • 无涯教程-CSS3 - 多列布局
    CSS3可以将文本内容设计成像报纸一样的多列布局。一些最常用的多列属性,如下所示-Sr.No.Value&Remark1column-count 指定元素应该被分割的列数。2column-fill指定如何填充列3column-gap 指定列与列之间的间隙4column-rule所有column-rule-*属性的简......
  • 无涯教程-CSS3 - 字体属性(Font)
    Web字体用于允许CSS中的字体,这些字体未在本地系统上安装。Sr.No.Font&Remark1TrueTypeFonts(TTF)TrueType是Apple和Microsoft在1980年代后期开发的轮廓字体标准,它成为Windows和MAC操作系统最常用的字体。2OpenTypeFonts(OTF)OpenType是Microsoft开发的可缩放计......
  • 无涯教程-CSS3 - 渐变属性(Gradients)
    渐变显示两种或更多种颜色的组合,如下所示-线性渐变线性渐变用于以线性格式(如从上到下)排列两种或多种颜色。Toptobottom(从上到下)<html><head><style>#grad1{height:100px;background:-webkit-linear-gradient(pink,......
  • 无涯教程-CSS3 - 颜色属性(Color)
    CSS3支持以下其他颜色属性-RGBA颜色HSL颜色HSLA颜色Opacity透明RGBA代表RedGreenBlueAlpha。它是CSS2的扩展,Alpha指定颜色的透明度,参数是0.0到1.0之间的数字。RGBA的示例语法如下所示-#d1{background-color:rgba(255,0,0,0.5);}#d2{background-colo......
  • 无涯教程-CSS3 - boarder-image属性
    CSSBorderimage属性用于向某些元素添加图像边界。边界图像的示例语法如下-#borderimg{border:10pxsolidtransparent;padding:15px;}最常用的值如下所示-Sr.No.Value&Remark1border-image-source用于设置图像路径2border-image-slice用于切片边......
  • 无涯教程-CSS3 - border-radius属性
    CSS3圆角用于通过使用border-radius 属性为正文或文本添加特殊的彩色圆角,语法如下-#rcorners7{border-radius:60px/15px;background:#FF0000;padding:20px;width:200px;height:150px;}下表显示了圆角的可能值,如下所示:Sr.No.Value&Remark1......