当前位置: 首页 > news >正文

苏州网站设计深圳10大产品设计公司

苏州网站设计,深圳10大产品设计公司,自学网站的建设,小程序源码获取【图书介绍】《Rust编程与项目实战》-CSDN博客 《Rust编程与项目实战》(朱文伟,李建英)【摘要 书评 试读】- 京东图书 (jd.com) Rust编程与项目实战_夏天又到了的博客-CSDN博客 8.2.1 元组的定义 元组是Rust的内置复合数据类型。Rust支持元组,而且元…

【图书介绍】《Rust编程与项目实战》-CSDN博客

《Rust编程与项目实战》(朱文伟,李建英)【摘要 书评 试读】- 京东图书 (jd.com)

Rust编程与项目实战_夏天又到了的博客-CSDN博客

8.2.1  元组的定义

元组是Rust的内置复合数据类型。Rust支持元组,而且元组是一个复合类型。我们知道,标量类型只能存储一种类型的数据。例如一个i32类型的变量只能存储一个数字。复合类型可以存储多个不同类型的数据。复合类型就像我们的菜篮子,里面可以放各种类型的菜。

元组可以将其他不同类型的多个值组合到一个复合类型中。元组还拥有一个固定的长度:无法在声明结束后增加或减少其中的元素数量。通常使用逗号分隔后放置到一对圆括号中创建一个元组。元组每个位置的值都有一个类型,这些类型不需要相同。元组是一个可以包含各种类型值的组合,是把几个类型组合到一起的最简单的方式。元组使用一对圆括号“()”来构造。如果元组中只包含一个元素,应该在后面添加一个逗号,以区分表达式和元组。

值得注意的是,元组有着固定的长度。而且一旦定义,就不能再增长或缩小。元组的下标从0开始。Rust中元组的定义很简单,就是使用一对圆括号把所有元素放在一起,元素之间使用逗号分隔。定义元组数据类型的时候也是一样的。在Rust语言中,元组的定义语法格式如下:

let tuple_name:(data_type1,data_type2,data_type3,…, data_typeN) = (value1,value2,value3,…,valueN);

定义元组时也可以忽略数据类型,比如:

let tuple_name = (value1,value2,value3,…,valueN);

但需要注意的是,如果显式指定了元组的数据类型,那么数据类型的个数必须和元组的个数相同,否则会报错。比如我们定义一个元组:

let tuple:(i32,f64,u8) = (-325,4.9,22);

8.2.2  元组的输出

如果要输出元组中的所有元素,必须使用{:?}格式化符。

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

编译运行以上Rust代码,输出结果如下:

(-325, 4.9, 22)

仅仅使用下面的输出语句是不能输出元组中的元素的。

println!("{ }",tuple)

这是因为元组是一个复合类型,要输出复合类型的数据,必须使用println!("{:?}", tuple_name)。

8.2.3  访问元组中的单个元素

我们可以使用元组名.索引数字来访问元组中相应索引位置的元素,索引从0开始。例如下面这个拥有3个元素的元组:

let tuple:(i32,f64,u8) = (-325,4.9,22);

可以通过下面的方式访问各个元素:

tuple.0  // -325tuple.1  // 4.9tuple.2  // 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);}

编译运行以上Rust代码,输出结果如下:

integer is :-325float is :4.9unsigned integer is :2

再来看一个范例:

fn main() {//包含各种不同类型的元组let long_tuple = (1u8, 2u16, 3u32, 4u64, -1i8, -2i16, -3i32, -4i64, 0.1f32, 0.2f64, 'a', true,);//通过元组的下标来访问具体的值println!("long tuple first value: {}", long_tuple.0);println!("long tuple second value: {}", long_tuple.1);println!("long_tuple: {:?}", long_tuple);//元组也可以充当元组的元素let tuple_of_tuples = ((1u8, 2u16, 2u32), (4u64, -1i8), -2i16);//元组可以打印println!("tuple of tuples: {:?}", tuple_of_tuples);//但很长的元组无法打印//let too_long_tuple = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13);//println!("too long tuple: {:?}", too_long_tuple);//创建单元素元组需要一个额外的逗号,这是为了和被括号包含的字面量进行区分println!("one element tuple: {:?}", (5u32,));println!("just an integer: {:?}", (5u32));
}

结果输出:

long tuple first value: 1
long tuple second value: 2
long_tuple: (1, 2, 3, 4, -1, -2, -3, -4, 0.1, 0.2, 'a', true)
tuple of tuples: ((1, 2, 2), (4, -1), -2)
one element tuple: (5,)
just an integer: 5

http://www.yayakq.cn/news/374127/

相关文章:

  • 河南中安建设集团有限公司网站网络营销渠道的类型有哪些
  • 宝盒 网站开网店的流程和步骤
  • 临沂网站建设公司哪家好网站怎么做直播
  • 河南艾特 网站建设网络系统管理技能大赛考什么
  • 爱站网长尾关键词挖掘工具电脑版大麦网的网站建设
  • html5 php网站源码下载网站空间租赁费用
  • 山东省建设执业注册中心网站如何做网站的映射
  • 天河建设网站专家阳泉集团网站建设
  • 成都专业做游戏网站dhl做单网站
  • 企业网站建设需要哪些资料wordpress登录后台空白
  • 有云服务器怎么做网站crm系统开发
  • 简述网站制作的步骤免费视频素材网站有哪些
  • 数据库修改网站后台密码响应式网站有哪些2017
  • jsp网站建设模板下载做拍卖的网站有哪些
  • 营销网络是指公司在国内外寻找战略伙伴和同盟者外链优化方法
  • 大连网站建设咨询海南seo
  • 网站技术可行性手机怎么修改网页内容
  • 0元免费做代理关键词优化排名费用
  • php做的网站源代码在哪里济南百度代理
  • 监控视频怎么做直播网站google网站入口
  • 电脑做网页用什么软件沈阳网站关键词优化
  • 如何使用qq邮箱做网站网站设计制作的介绍
  • 查不到网站备案网站开发常用字体
  • 国外的建筑设计案例网站推广普通话奋进新征程宣传语
  • 深圳公司网站建设服务为先只做动漫的网站
  • 芜湖营销网站建设网站设计论文5000
  • 环保网站设计规划书网站建设需要那些人才
  • 微信公众号运营推广方案西安seo外包
  • 高端响应式网站建设免费帮朋友做网站
  • 瑞安外贸网站建设网页设计作业个人网站