美文网首页
Rust学习 (六) 分支循环

Rust学习 (六) 分支循环

作者: Gascognya | 来源:发表于2020-09-16 20:02 被阅读0次

if 表达式

{
    println!("number was three");
}


if number {
    println!("number was three");
}

请问上面两者有何区别?

第一个是我们之前说的代码块。第二个是我们熟知的if语句。
仔细一看,两者貌似只差别在一个条件判定。真值才会执行。

实际上,就是如此。if 表达式,说明if也是一种表达式。可以具有返回值。

let number = if condition {
        5
};

那么这样的语句是否可以呢?
答对了一半,这样的逻辑是对的,但是忽略了一点。if条件如果不被执行,那么let number =就会出现错误,rust是一门十分严谨的语言,这样危险的错误是不可以的。为了无论如何,number都可以被赋一个值。我们需要加上else

let number = if condition {
    5
} else {
    6
};

这样是被允许的,这和python中的if else简化形式含义相同

number = 5 if condition else 6

并且要注意,rust中的if表达式,if和else的返回值类型要相同,不然显而易见也会出现错误。

loop 表达式

let mut counter = 0;
let result = loop {
    counter += 1;

    if counter == 10 {
        break counter * 2;
    }
};

loop表达式是一种无限循环,直到发生错误或者break
因为是表达式,所以也可以有返回值,其返回值是break语句后的内容。

while 循环

while循环

    let mut number = 3;

    while number != 0 {
        println!("{}!", number);
        number = number - 1;
    };

在while中是不能用break来返回一些值的,所有while true最好都替换成loop,两者在编译时有本质区别。

for 循环

    let num_arry = [10, 20, 30, 40, 50];
    for num in num_arry.iter() {
        println!("{}!", num)
    }

    for i in 1..5 {
        println!("{}!", i)
    }

for ... in ...这么方便的功能自然是少不了的

相关文章

  • Rust学习 (六) 分支循环

    if 表达式 请问上面两者有何区别? 第一个是我们之前说的代码块。第二个是我们熟知的if语句。仔细一看,两者貌似只...

  • 学习Rust 循环

    Rust 语言是一种高效、可靠的通用高级语言。其高效不仅限于开发效率,它的执行效率也是令人称赞的,是一种少有的兼顾...

  • 巧用do{...}while(0)

    在学习第一门编程语言时,就已经介绍了顺序分支、条件分支、循环分支。比如循环分支有for、while、do-whil...

  • 第十一天学习总结

    一、学习内容 1、Python学习了分支和循环结构语句知识点,根据分支循环的相关知识点讲解了身体指数指标的实例,还...

  • rust for 循环

    1. 参考 https://blog.csdn.net/FlyingKiss007/article/details...

  • Linux/unix-shell之流程控制语句

    目录 单分支 双分支 多分支 for循环for in 格式c语言格式for循环 while循环 break关键字...

  • 2017 10 19

    今天学习了循环,判断,分支语句(单分支、双分支、多分支)等,这些在之前的C和C++中有接触过 ,所以理解起来还是相...

  • 2018-11-09

    今天,我们学习了分支和循环的主要知识,主要是对 if、else、elif、for循环、while循环以及一系列相关...

  • 分支、循环

    一、BOOL布尔类型: 非真即假,YES表示真,NO表示假( 注:C语言中默认非零即为真) 二、关系运算符: <...

  • Python分支循环总结

    一,分支结构 1,单分支结构 2,二分支结构 3,多分支结构 4,分支嵌套: 二,循环结构 1,while循环 2...

网友评论

      本文标题:Rust学习 (六) 分支循环

      本文链接:https://www.haomeiwen.com/subject/kyxbektx.html