条件
可以尝试画流程图。
if-then
if 条件
若条件为真时执行
end
条件(statement)
是一个值或表达式,它的结果必须是Bool
类型
if-then-else
if 条件
若条件为真时执行
else
若条件为假时执行
end
elseif
你可以将else
与if
合并,并并入同一层中
if 条件1
若条件1为真时执行
elseif 条件2
若条件2为真时执行
end
三目运算符
表达式 ? 真时执行 : 假时执行
由于Julia 的续行规则,你可以写出如下的代码
d=v=="Mon" ? 1 :
v=="Tue" ? 2 :
v=="Wed" ? 3 :
v=="Thur" ? 4 :
v=="Fri" ? 5 :
v=="Sat" ? 6 : 7
函数包裹
Julia 提供了一个函数型的分支方式,它的不同点在于不会短路
julia> ifelse(true, "a", "b")
"a"
julia> f()=print('^'); ifelse(true, f(), f())
^^
switch-case?
Julia 本身不提供 switch/select-case
结构,因为会自动优化。[1]
CPU可能进行会分支预测 [2]
1.
https://discourse.julialang.org/t/is-there-a-select-case-equivalent-in-julia/66516
2.
https://www.luogu.com.cn/blog/zhaojinxi/qian-tan-di-ceng-chang-shu-you-hua-ji-CPU-you-hua