为什么Rust语言不支持三元表达式?

在Java, PHP语言中有一个我们常用的三元表达式写法, 而在Rust语言中这种三元表达式写法是不被支持的, 为什么呢?

最直接的就是 在Rust语言中可以将 if 条件表达式的值可以直接赋值给变量, 而JAVA,PHP, JS等支持三元表达式的语言是不行的。

Rust类"三元表达式"示例

rust 复制代码
let lat=102;

// 一行代码示例
let location = if lat==116 {"北京"} else {"昆明"};

// Rust还支持在{}中的多行代码,最后一条即表达式的返回值,且最后一行不需要加分号 ;

let location2 = if lat==116 {
    "北京"
} else if lat==102 {
    println!("你当前在昆明"); // 这里还可以有代码
    "昆明"
} else {
    "其他"
}


println!("{}", location); // 输出 昆明
相关推荐
FL16238631296 小时前
基于C#winform部署软前景分割DAViD算法的onnx模型实现前景分割
开发语言·算法·c#
郭wes代码6 小时前
大三Java课设:一行行敲出来的贪吃蛇,老师以为我是CV的
java·开发语言
John.Lewis7 小时前
C++进阶(12)附加学习:STL之空间配置器(了解)
开发语言·c++·笔记
23471021277 小时前
4.16 学习笔记
开发语言·软件测试·python
014-code7 小时前
日志规范:怎么写才不算写废话
java·开发语言·设计模式·日志
techdashen7 小时前
每次 `cargo build` 背后,有人在默默撑着这一切
rust
Binarydog_Lee8 小时前
Rust 核心机制:所有权、借用与生命周期
开发语言·rust
XMYX-08 小时前
17 - Go 通道 Channel 底层原理 + 实战详解
开发语言·golang
Hello--_--World8 小时前
ES13:类私有属性和方法、顶层 await、at() 方法、Object.hasOwnProperty()、类静态块 相关知识点
开发语言·javascript·es13
Hugh-Yu-1301238 小时前
二元一次方程组求解器c++代码
开发语言·c++·算法