swift基本语法——数据类型

Swift的数据类型包括:整型(Int)、浮点型(Double,Float)、布尔类型(Bool)、字符串(String),元组、集合、枚举、结构体和类等。
这些数据类型按照参数传递的不同分为值类型和引用类型,其中类属于引用类型,其他都属于值类型。值类型在赋值或作为函数参数传递时,会创建一模一样的副本,把副本传过去,原始数据不受影响。引用类型在赋值或作为函数参数传递时,会把值本身传过去,当函数改变了参数值时,原始值也受到了影响。

整型

1.整型按照有无符号可以分为两种:

  • 有符号的整型,能表示正数、零和负数;
  • 无符号的整型,能表示正数和零,不能表示负数。

2.通过访问不同整数类型的min和max属性可以获取对应类型的最大值和最小值。

let minValue = UInt8.min     // minValue为0.是UInt8类型
let maxValue = UInt8.max   // maxValue为255,是UInt8类型
print("UInt8的最小值为\(minValue),最大值为\(maxValue)")

3.整型字面量可用不同的进制表示,一般有如下四种形式。
(1)十进制数,没有前缀。
(2)二进制数,前缀是0b。
(3) 八进制数,前缀是0o。
(4) 十六进制, 前缀是0x.
十六进制字面量包含数字0-9及字母A-F(大小写均可)

浮点型

1.Swift提供了两种有符号的浮点数类型,分别是Double和Float.

  • Double:64位浮点数
  • Float:32位浮点数

2.在Swift中,可以给整型和浮点型添加0或者下划线(_)用于分隔数值,提高数值的可读性,并不影响实际值。

let a = 3_500_000   // 一般每三个数字添加一个下划线
var b =003.1415

3.浮点型字面量
浮点型字面量有十进制(没有前缀)和十六进制(前缀是0x)两种形式。小数点两边必须有至少一个数字。浮点字面量还可以用指数来表示,包括以下两种。
(1)十进制浮点数的指数通过大写或小写e来指定,假设十进制数的指数为exp,那这个数相当于基数乘以10^exp.

  • 1.25e2表示1.25 * 10 ^ 2
  • 1.25e-2表示1.25 * 10^-2

(2)十六进制浮点数通过大写或者小写的p来指定。假设十六进制的指数为exp,那这个数相当于基数乘以2^exp。

  • 0xFp2 表示15*2^2
    *0xFp-2表示15 *2^-2

布尔类型(Bool)

Swift中布尔类型的值只能为true或者false,其中,true表示真,false表示假。

let i = 1
if i {
   // 这个例子不会通过编译,会报错
}

if i == 1{
  // 这个例子可以编译成功
}

由于表达式(i == 1)的比较结果是Bool类型的,可以作为逻辑值使用,所以能够编译成功。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Swift 是一门开发 iOS, macOS, watchOS 和 tvOS 应用的新语言。然而,如果你有 C 或...
    XLsn0w阅读 930评论 2 1
  • 前言 Swift是一门新的适用于iOS,macOS,watchOS,tvOS开发的编程语言。尽管如此,Swift的...
    BoomLee阅读 1,777评论 0 4
  • 关于 Swift 重要这个文档所包含的准备信息, 是关于开发的 API 和技术的。这个信息可能会改变, 根据这个文...
    无沣阅读 4,360评论 1 27
  • 某同事老公跳槽到我们公司,众人都不知道。一天发全厂的邮件中有某部某人,跟她老公的名字一模一样。 我说:姐,这人的名...
    双尾鱼_737a阅读 204评论 0 1
  • 很奇怪,作为一个成年人,这两年杨幂的电视剧我竟然都看了,嗯,翻译官和三生三世。 在电视剧鄙视链上,自然是要被鄙视的...
    梁梦之阅读 808评论 1 6