弱小与无知不是生存的障碍,傲慢才是。 – 刘慈欣 《三体》
Neither weakness nor ignorance hinders our survival, but arrogance does.
1. 原始数据类型(Numeric Primitiv)
1.1 整数(Integer)
整型字面量的标准形式:
julia>123
123
整型在Julia中的类型名为Int,也就是英文整型Integer的缩写。
# 32位操作系统
julia>typeof(ans)
Int32
# 64位操作系统
julia>typeof(ans)
Int64
Julia提供了内置变量Sys.WORD_SIZE用于查看系统字长:
# 32位操作系统
julia>Sys.WORD_SIZE
32
# 64位操作系统
julia>Sys.WORD_SIZE
64
Julia提供了5种精度的有符号整型,分别是:Int8,Int16,Int32,Int64,Int128,以及相应字节数的5种无符号整型。
1.1.1 有符号整型
1.1.1.1 Int8
在Julia中,计算机会为Int8类型的整型分配8个连续的存储单元,也就是8个比特(Bit),一个字节(Byte),来存放数据。
sizeof(type)用于查看字节:
julia>sizeof(Int8)
1
8个存储单元的首位,也就是最高位为符号位,0表正数,1表负数。
十进制数5的内置表示:
剩余每个单元格都有2种存储可能:0或1,共7个,也就有 2 7 2^7 27种可能。
我们把0考虑在正数范围内,则Int8类型可表示的最大整数为: 2 7 − 1 2^7-1 27−1。
用typemax(type)查看类型最大值:
julia>2^7-1
127
julia>typemax(Int8)
127
最小为: − 2 7 -2^7 −27
用typemin(type)函数查看类型最小值:
julia>-2^7
-128
julia>typemin(Int8)
-128
1.1.1.2 其他整型
名称 | 位/比特(Bit) | 最小值 | 最大值 |
---|---|---|---|
Int8 | 8 | − 2 7 -2^7 − |