## Swift基本类型之整型
[TOC]
声明变量时使用整型存储,具体整型到底能存储多大的整型值根据计算机的位决定,如果是32位的操作系统,那么存储的值范围为:`-2147483648 ~ 2147483647`,而如果是64位的操作系统,那么存储的值范围为:`-9223372036854775808 ~ 9223372036854775807`,换言之整型的存储是有范围的。
例如:这里使用的是 64 位的操作系统,如下定义是能够通过的。
```
var myInt: Int = 9223372036854775807
let myUInt: UInt = 18446744073709551615
```
### 整型
```
Int.max // 9223372036854775807
Int.min // -9223372036854775808
UInt.max // 18446744073709551615
UInt.min // 0
```
### Int8 有符号 8 位整型
```
Int8.max // 127
Int8.min // -128
```
### UInt8 无符号 8 位整型
```
UInt8.max // 255
UInt8.min // 0
```
### Int16 有符号 16 位整型
```
Int16.max // 32767
Int16.min // -32768
```
### UInt16 无符号 16 位整型
```
UInt16.max // 65535
UInt16.min // 0
```
### Int32 有符号 32 位整型
```
Int32.max // 2147483647
Int32.min // -2147483648
```
### UInt32 无符号 32 位整型
```
UInt32.max // 4294967295
UInt32.min // 0
```
### Int64 有符号 64 位整型
```
Int64.max // 9223372036854775807
Int64.min // -9223372036854775808
```
### UInt64 无符号 64 位整型
```
UInt64.max // 18446744073709551615
UInt64.min // 0
```
> 不建议在开发中使用这么多的整型的表示方式,除非有非常明确的使用需求,一般情况下我们只需要写`Int`即可。
### 10 进制表示 10
```
let decimalInt: Int = 10
```
### 2 进制表示 10
```
let binaryInt: Int = 0b01010
```
### 8 进制表示 10
```
let octalInt: Int = 0o12
```
### 16进制表示 10
```
let hexInt:Int = 0xa
```
### 可以使用 `_` 分割表示整型
这种写法可以增加程序的可读性。
```
let bigNum = 100_0000 // 1000000
```
### 在整型运算中 Swift 不允许隐式的类型转换
在整型运算中 Swift 不允许隐式的类型转换,这种机制能有效的减少潜在Bug的出现,也表明 Swift 是一门强类型语言。
```
let x: UInt16 = 10
let y: UInt8 = 20
// binary operator '+' cannot be applied to operands of type 'UInt16' and 'UInt8'
x + y
let m = x + UInt16(y)
let n = UInt8(x) + y
```
- 学习笔记
- 基础
- 基本类型之整型
- 基本类型之浮点型
- 基本类型之布尔类型以及简单的 if 语句
- 基础类型之元组
- 基本类型之其他
- 运算符
- 基础运算符
- 比较运算符、逻辑运算符
- 三元运算符
- 范围运算符for-in
- 逻辑控制
- 循环结构
- 选择结构
- 字符串
- Character和Unicode
- String.index 和 range
- 可选型
- 容器类
- 数组初始化
- 数组基本操作
- 字典初始化
- 字典基本操作
- 集合初始化
- 集合基本操作
- 函数
- 闭包
- 枚举
- 结构体
- 类
- 文档注释
- 属性和方法
- 下标和运算符重载
- 拓展和泛型
- 协议
- 其他
- Swift 3.0 For 循环
- Swift 随机数的生成
- IOS开发玩转界面 UIKit
- UILable 文本显示控件
- UIButton 简单的交互控件
- UIImageView 图片控件
- UISearchBar 搜索控件