686|9

6841

帖子

11

TA的资源

版主

楼主
 

《Rust实战》match: 类型感知的模式匹配 [复制链接]

2.4.7节中,引入一个新的match。

文中阐述了使用match更安全,代码看起来也是优雅而简洁,类似于其它语言的swtich关键字。但是他又优于C语言中的switch。match如果匹配到一个分支,match就立即返回。

给出了示例:

fn main() {
    let haystack = [1,1,2,5,14,42,132,429,1430,4862];
    for item in &haystack {
        let result = match item {
            42 | 132 => "hit!",
            _ => "miss!",
        };
        if result == "hit!" {
            println!("{}: {}",item, result);
        }
    }  
}

在上面的例程中,以 42 | 132的匹配 如果是真的就给出字符串 hit!,运行后效果如下:

    Finished dev [unoptimized + debuginfo] target(s) in 0.01s
     Running `target/debug/samp2_3`
42: hit!
132: hit!

到此我学习了for、while、loop、if 、else if 、else 、match,以及continue、break 循环标签'。使用这些流程控制语句,就可以在Rust的世界里玩了。

此帖出自编程基础论坛

最新回复

模式匹配还是很有用的,函数式里面很多用的。   详情 回复 发表于 2024-4-19 14:17
点赞 关注
 

回复
举报

4771

帖子

12

TA的资源

版主

沙发
 
质疑rust
理解rust
加入rust
我现在还在质疑质疑质疑中。。。
此帖出自编程基础论坛

点评

来吧来吧来吧,入坑再说。嘿嘿!  详情 回复 发表于 2024-4-17 18:23
 
 
 

回复

6841

帖子

11

TA的资源

版主

板凳
 
吾妻思萌 发表于 2024-4-17 14:22 质疑rust 理解rust 加入rust 我现在还在质疑质疑质疑中。。。

来吧来吧来吧,入坑再说。嘿嘿!

此帖出自编程基础论坛
 
 
 

回复

56

帖子

0

TA的资源

一粒金砂(中级)

4
 

haimeiy学习了

此帖出自编程基础论坛
 
 
 

回复

1123

帖子

1

TA的资源

五彩晶圆(初级)

5
 

已入坑,

对这个match,还不是很理解。。。。

明天试一试。

此帖出自编程基础论坛

点评

这他个跟switch有点象,但是比switch使用要灵活很多,switch每个判断很死,他这里可以在一个区间,可以或。。。。  详情 回复 发表于 2024-4-18 09:03
 
 
 

回复

731

帖子

4

TA的资源

纯净的硅(高级)

6
 

希望楼主的有关Rust的基础技术分享能让更多的爱好者喜欢上这门语言

此帖出自编程基础论坛

点评

有更多的人爱上这门语言后,又会有更多的人分享知识,这样学习起来就更加方便,良性循环!  详情 回复 发表于 2024-4-18 09:04
 
 
 

回复

6841

帖子

11

TA的资源

版主

7
 
hellokitty_bean 发表于 2024-4-18 00:21 已入坑, 对这个match,还不是很理解。。。。 明天试一试。

这他个跟switch有点象,但是比switch使用要灵活很多,switch每个判断很死,他这里可以在一个区间,可以或。。。。

此帖出自编程基础论坛
 
 
 

回复

6841

帖子

11

TA的资源

版主

8
 
chejm 发表于 2024-4-18 07:25 希望楼主的有关Rust的基础技术分享能让更多的爱好者喜欢上这门语言

有更多的人爱上这门语言后,又会有更多的人分享知识,这样学习起来就更加方便,良性循环!

此帖出自编程基础论坛
 
 
 

回复

1123

帖子

1

TA的资源

五彩晶圆(初级)

9
 

let a = b  的绑定,什么时候是引用(没有所有权),什么时候有所有权,这个还处在疑惑中。。。

估计要看到后面才知道

此帖出自编程基础论坛
 
 
 

回复

7452

帖子

2

TA的资源

五彩晶圆(高级)

10
 

模式匹配还是很有用的,函数式里面很多用的。

此帖出自编程基础论坛
 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表