为什么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); // 输出 昆明
相关推荐
鶴哥只手遮天2 小时前
《rustc 内幕》第 1 章 全景:rustc 编译流水线与 crate 版图
后端·rust·开源
starzy19903 小时前
深入理解Scala隐式值:编译期自动装配
开发语言·后端·scala
布莱克6053 小时前
Swift 条件语句详解:从 if 到 switch 的完整指南
开发语言·ssh·swift·switch·条件语句·guard·if
吴可可1233 小时前
ActiveX调用WScript.Shell原理揭秘
开发语言
晴天的雨.9924 小时前
【C++】继承篇
java·开发语言·c++
SomeOtherTime4 小时前
第 1 讲:内存布局与所有权解剖——栈帧、胖指针与“移动/拷贝”在汇编层面的真实面目
java·开发语言·汇编
总要学点什么5 小时前
第106篇:三维特效-流动线效果——让一颗光点沿整条线一路滚到头
开发语言·javascript·ecmascript·gis·webgl·材质·cesium
大可不必了15 小时前
03 函数定义和调用
开发语言·python
I_belong_to_jesus15 小时前
C++关于分支预测的优化1
开发语言·c++·算法
承渊政道16 小时前
【Python编程—从入门到实践】(记分与闯关:用Python+Pygame,打造越战越精彩的太空大战!)
开发语言·python·pycharm·游戏程序·pygame