我可以在Julia中创建Int64
甚至Uint8
类型的“文字”:
julia> typeof(8)
Int64
julia> typeof(0x08)
Uint8
但是我还没有找到如何制作
Int8
类型的文字的方法。我尝试了几种不同的方法:julia> 8::Int8
ERROR: type: typeassert: expected Int8, got Int64
julia> 0x08::Int8
ERROR: type: typeassert: expected Int8, got Uint8
julia> convert(Int8, 8)
8
julia> typeof(ans)
Int8
因此
convert
函数的应用程序可以正常工作,但这是一个有点冗长的表达式。我想知道是否还有一些更简洁的内容,例如Rust的8i8。我正在使用Julia 0.3.3,但对于Julia 0.4.x的答案也可以。
最佳答案
比convert(Int8, 8)
更方便的是,在较早的版本上,Int8(8)
分别为int8(8)
。之所以很少出现像8i8
这样的数字文字符号,是因为它与并置相乘产生冲突。
julia> i8=8
8
julia> 3i8
24