03.Swift 数据类型,类型推导,基本运算

@(〓〓 iOS-Swift语法)[Swift 语法]


iOS Swift 语法 底层原理内存管理分析 专题:【iOS Swift5语法】

00 - 汇编
01 - 基础语法
02 - 流程控制
03 - 函数
04 - 枚举
05 - 可选项
06 - 结构体和类
07 - 闭包
08 - 属性
09 - 方法
10 - 下标
11 - 继承
12 - 初始化器init
13 - 可选项


目录

  • 3.Swift的数据类型
    • Swift类型的介绍
    • Swift中的类型推导
    • Swift中基本运算

Swift类型的介绍

  • Swift中的数据类型也有:整型/浮点型/对象类型/结构体类型等等
  • 先了解整型和浮点型
  • 整型
    • 有符号
      • Int8 : 有符号8位整型
      • Int16 : 有符号16位整型
      • Int32 : 有符号32位整型
      • Int64 : 有符号64位整型
      • Int : 和平台相关(默认,相当于OC的NSInteger)
    • 无符号
      • UInt8 : 无符号8位整型
      • UInt16 : 无符号16位整型
      • UInt32 : 无符号32位整型
      • UInt64 : 无符号64位整型
      • UInt : 和平台相关(常用,相当于OC的NSUInteger)(默认)
    • 浮点型
      • Float : 32位浮点型
      • Double : 64浮点型(默认)

// ----------------------------------------------------------------------------
// 1.整型(Int)和浮点型(Double)
// 定义一个Int类型的常量
let a : Int = 3
// 定义一个Double类型的变量
var b : Double = 1.2443

Swift中的类型推导

  • Swift是强类型的语言
  • Swift中任何一个标识符都有明确的类型
  • 注意:
    • 如果定义一个标识符时有直接进行赋值,那么标识符后面的类型可以省略.
    • 因为Swift有类型推导,会自动根据后面的赋值来决定前面的标识符的数据类型.
    • 可以通过option+鼠标左键查看变量的数据类型
    // ----------------------------------------------------------------------------
    // 2.类型推导: 定义一个标识符时如果有直接赋值,那么编译器会根据后面赋值的类型推导出钱买标识符的类型
    // 技巧: 可以通过 option + 鼠标左键 查看一个标识符的类型
    // m类型为Int
    let m = 20
    // n类型为Double
    let n = 3.14
    
    // 创建一个UIView
    let view = UIView()

Swift中基本运算

  • Swift中在进行基本运算时必须保证类型一致,否则会出错.
    • 相同类型之间才可以进行运算
    • 因为Swift中没有隐式转换
  • 数据类型的转化
    • Int类型转成Double类型:Double(标识符)
    • Double类型转成Int类型:Int(标识符)
// ----------------------------------------------------------------------------
// 3.Swift中的基本运算
// OC中有隐式转换: 如果将一个整型和一个浮点型进行运算,会自动将整型转成浮点型之后再进行计算
// 注意: 1.Swift中没有隐式转换  2.不同类型之间不能进行运算
let a = 10
let b = 3.14

// 错误写法
// let c = a + b
// let c = a * b

// 正确写法
let c = Double(a) + b
let d = a + Int(b)

// ------------------------------------------------------------------------
// Swift中的类型转换
// 将Int类型转成Double类型: Double(m)
let result = Double(m) + n

// 将Double类型转换成Int类型: Int(n)
let result1 = m + Int(n)

// 将Double转成Int
let result2 : Int = Int(Double(m) + n)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容