Movatterモバイル変換


[0]ホーム

URL:


codecamp

if

if

Rust 提供的 if 语法不是特别复杂,但它比起传统的系统语言更像动态类型语言中提供的 if。接下来让我们谈论它,以确保你掌握 Rust 中 if 的微妙之处。

if 是“分支”特定形式的更一般的概念。这个名字来自于树中的一个分支:在一个决策点有多条路径可以选择,当我们依赖于某个条件可以选择其中一个分支。

if 通常情况是一个选择会有两条路径:

let x = 5;if x == 5 {    println!("x is five!");}

如果我们改变了 x 的值,上面那一行不会打印。更具体地说,如果 if 后面的表达式的求值结果为 true,那么它后面的语句块会被执行。如果是 false,那么该语句块不会被执行。

如果你想要在 if 后面表达式是 false 时发生什么,你可以使用一个 else 语句:

let x = 5;if x == 5 {    println!("x is five!");} else {    println!("x is not five :(");}

如果有一个以上的情况下,可以使用 else if 语句:

let x = 5;if x == 5 {    println!("x is five!");} else if x == 6 {    println!("x is six!");} else {    println!("x is not five or six :(");}

这都是非常标准的语法结构。然而,你也可以这样做:

let x = 5;let y = if x == 5 {    10} else {    15}; // y: i32

我们可以(而且应该)这样写:

let x = 5;let y = if x == 5 { 10 } else { 15 }; // y: i32

上面的代码会正常执行,因为 if 是个表达式。表达式的值是被选择的那个分支中最后一个表达式的值。并且如果 if 语句后面没有 else 语句,通常会将 () 作为语句执行的结果。

注释
for 循环
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录
关于
介绍

新手入门

学习 Rust

高效 Rust

语法和语义

Nightly Rust

词汇表
相关学术研究

关闭

MIP.setData({'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false},'pageFontSize' : getCookie('pageFontSize') || 20});MIP.watch('pageTheme', function(newValue){setCookie('pageTheme', JSON.stringify(newValue))});MIP.watch('pageFontSize', function(newValue){setCookie('pageFontSize', newValue)});function setCookie(name, value){var days = 1;var exp = new Date();exp.setTime(exp.getTime() + days*24*60*60*1000);document.cookie = name + '=' + value + ';expires=' + exp.toUTCString();}function getCookie(name){var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)');return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null;}
[8]ページ先頭

©2009-2025 Movatter.jp