专栏首页学海无涯4.Swift中数据类型

4.Swift中数据类型

Swift类型的介绍

  • Swift中的数据类型也有:整型/浮点型/BOOL型/对象类型/结构体类型等等
  • 整型
    • 有符号
      • 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浮点型(默认)
  • Bool型
    • true : 真
    • false : 假
// 定义一个Int类型的变量m,并且赋值为10
var m : Int = 10
// 定义一个Double类型的常量n,并且赋值为3.14
let n : Double = 3.14
//定义一个Bool类型
let t : Bool = true

Swift中的类型推导

  • Swift是强类型的语言
  • Swift中任何一个标识符都有明确的类型
  • 注意:
    • 如果定义一个标识符时有直接进行赋值,那么标识符后面的类型可以省略
    • 因为Swift有类型推导,会自动根据后面的赋值来决定前面的标识符的数据类型
    • 可以通过option+鼠标左键来查看变量的数据类型
// 定义变量时没有指定明确的类型,但是因为赋值给i一个20.20为整型.因此i为整型
var i = 20
// 错误写法:如果之后赋值给i一个浮点型数值,则会报错
// i = 30.5

// 正确写法
var j = 3.33
j = 6.66

Swift中基本运算

  • Swift中在进行基本运算时必须保证数据的类型一致,否则会出错
    • 相同类型之间才可以进行运算
    • 因为Swift中没有隐式转换
  • 数据类型的转化: 类型()
    • Int类型转成Double类型:Double(标识符)
    • Double类型转成Int类型:Int(标识符)
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)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Combine-AnyPublisher

    YungFan
  • 1.Swift 介绍

    YungFan
  • 12.Any、AnyObject与类型转化

    YungFan
  • Swift解读专题一——Swift2.2语言预览

            本系列专题是我通过阅读Swift2.2语言开发文档,翻译总结加上自己的理解整理而成。其中大部分结构和内容都来自开发文档,有疏漏和错误之处,还望更...

    珲少
  • Typescript-基础类型

    Typescript支持与Javascript几乎相同的数据类型,此外还提供使用的枚举类型方便我们使用。

    用户3258338
  • ChineseGLUE:为中文NLP模型定制的自然语言理解基准

    ChineseGLUE 的成员包括全国各地关注 NLP 的热心专业人士,包括清华、北大、浙大等知名高校的毕业生。团队的愿景是通过完善中文语言理解基础设施,促进中...

    机器之心
  • ChineseGLUE:为中文NLP模型定制的自然语言理解基准

    ChineseGLUE 的成员包括全国各地关注 NLP 的热心专业人士,包括清华、北大、浙大等知名高校的毕业生。团队的愿景是通过完善中文语言理解基础设施,促进中...

    代码医生工作室
  • Fortran知识 | 代码错误(数组越界)

    如图所示,提示为: Subscript #1 of the array INDEX has value 61 which is greater than the...

    fem178
  • 使用正则表达式求完整路径中的文件名

          以前都是比较恶心的算法,找字符串中的最后一个"\",再求出末尾的文件名。现在好啦,用.net中的正则表达式,可以非常漂亮的完成。    usin...

    用户1075292
  • 【LeetCode11】反转字符串

    这道题比较简单,唯一可能需要注意的就是需要空间复杂度为O(1),也就是说不可以另外新建数据来储存元素,所以,我们可以尝试用双指针,从列表的两端,头尾交换位置即可...

    Sam Gor

扫码关注云+社区

领取腾讯云代金券