5.4 数字表示方式

整型和浮点型都表示数字类型,那么在给这些类型的变量或常量赋值的时候,我们如何表示这些数字的值呢?前面我们曾使用30表示整数Int,使用3.14159表示浮点数Double。在计算机编程的时候,数字是比较丰富的,下面我们介绍一下进制数字表示和指数表示等方式。

5.4.1 进制数字表示

我们为一个整数变量赋值十进制数、二进制数、八进制数、十六进制数。它们的表示方式如下:

  • 二进制数,以 0b 为前缀,0是阿拉伯数字,不要误认为是英文字母o,b是英文小写字母,不能大写;

  • 八进制数,以0o为前缀,第一个字符是阿拉伯数字0,第二个字符是英文小写字母o,必须小写;

  • 十六进制数,以 0x 为前缀,第一个字符是阿拉伯数字0,第二个字符是英文小写字母x,必须小写。

例如下面几条语句都是将整型28赋值给常量:

  1. let decimalInt = 28
  2. let binaryInt = 0b11100
  3. let octalInt = 0o34
  4. let hexadecimalInt = 0x1C

5.4.2 指数表示

我们在进行数学计算的时候往往会用到指数表示的数值。如果采用十进制表示指数,需要使用e(大写或小写的)表示幂,e2表示102

采用十进制指数表示的浮点数示例如下:

  1. var myMoney = 3.36e2
  2. var interestRate = 1.56e-2

其中3.36e2表示的是3.36×1021.56e-2表示的是1.56×10-2

十六进制表示指数,需要使用p(大写或小写的)表示幂,与十进制不同的是,p2表示22。由于十六进制换算起来比较麻烦,因此我们推荐使用十进制表示。

5.4.3 其他表示

在Swift中,为了阅读的方便,整数和浮点数均可添加多个零或下划线以提高可读性,两种格式均不会影响实际值。

示例代码如下:

  1. var interestRate = 000.0156
  2. var myMoney = 3_360_000

代码第①行的000.0156浮点数前面添加了多个零,变量interestRate实际值还是0.0156浮点数。代码第②行的3_360_000中间添加了很多个下划线,变量myMoney实际值还是3360000整数,下划线一般是三位加一个。