julia语言按位或在if语句中

julia语言按位或在if语句中,julia,Julia,我正在Windows 8.1上使用Julia 0.3.0 我输入以下内容: julia> Y, M = 2000, 2 (2000,2) julia> if M == 1 | M == 2 Y -= 1 M += 12 end julia> Y, M (2000,2) 我期望Y=1999,M=14 显然,这不是使用按位or(|)的方法 如何实现所需的结果?使用|()控制流或 这种情况下的问题是运算符优先级:|是按位

我正在Windows 8.1上使用Julia 0.3.0

我输入以下内容:

julia> Y, M = 2000, 2
(2000,2)

julia> if M == 1 | M == 2
           Y -= 1
           M += 12
       end

julia> Y, M
(2000,2)
我期望Y=1999,M=14

显然,这不是使用按位or(|)的方法 如何实现所需的结果?

使用
|
()控制流

这种情况下的问题是运算符优先级:
|
是按位的,或者高于相等,请参阅。例如,如果您执行
(M==1)|(M==2)
,它就可以工作。至少目前还不清楚优先权是否应该改变