Julia 数据类型
在编程语言中,都有基本的数学运算和科学计算,它们常用的数据类型为整数和浮点数。
另外还有一个"字面量"的术语,字面量(literal)用于表达源代码中一个固定值的表示法(notation),整数、浮点数以及字符串等等都是字面量。
例如:
a=1 // a 是变量,1 是整型字面量 b=1.0 // b 是变量,1.0 是浮点型字面量
Julia 提供了很丰富的原始数值类型,并基于它们定义了一整套算术运算操作,另外还提供按位运算符以及一些标准数学函数。
整数类型
下表列出来 Julia 支持的整数类型:
类型 带符号? 比特数 最小值 最大值
Int8 ✓ 8 -2^7 2^7 – 1
UInt8 8 0 2^8 – 1
Int16 ✓ 16 -2^15 2^15 – 1
UInt16 16 0 2^16 – 1
Int32 ✓ 32 -2^31 2^31 – 1
UInt32 32 0 2^32 – 1
Int64 ✓ 64 -2^63 2^63 – 1
UInt64 64 0 2^64 – 1
Int128 ✓ 128 -2^127 2^127 – 1
UInt128 128 0 2^128 – 1
Bool N/A 8 false (0) true (1)
整数字面量形式:
实例
julia> 1
1
julia> 1234
1234
整型字面量的默认类型取决于目标系统是 32 位还是 64 位架构(目前大部分系统都是 64 位):
实例
32 位系统:
julia> typeof(1)
Int32
64 位系统:
julia> typeof(1)
Int64
Julia 的内置变量 Sys.WORD_SIZE 表明了目标系统是 32 位还是 64 位架构:
实例
32 位系统:
julia> Sys.WORD_SIZE
32
64 位系统:
julia> Sys.WORD_SIZE
64
Julia 也定义了 Int 与 UInt 类型,它们分别是系统有符号和无符号的原生整数类型的别名。
实例
32 位系统:
julia> Int
Int32
julia> UInt
UInt32
64 位系统:
julia> Int
Int64
julia> UInt
UInt64