Swift中常用的数据类型

Swift中数据类型及用法

1、Swift中常用的数据类型有:
Int、Float、Double、String 、Bool、Character、Array、Dictionary、元组类型、可选类型

2、如何指定变量、常量的数据类型
在常量、变量名后面加: 类型名称

var name:String = "android_ls"
var age:Int = 28

一般来说没必要指定变量、常量的数据类型,在声明常量、变量时赋予初始值,Swift可以自动推断出这个变量、常量的数据类型。

我们来看下面这行代码
var age = 28
Swift会推断出age是Int类型,因为28是个整数

3、Swift严格要求变量在使用前必须进行初始化,下面的代码是错误的

Swift是强类型的语言,任何一个变量或者常量都有明确的类型。

4、整数
* 整数分为两种:
有符号(signed):正、负、零
无符号(unsigned):正、零
Swift提供了8、16、32、64的有符号和无符号整数(Int8、Int16、Int32、Int64、UInt8、UInt16、UInt32、UInt16),比如
UInt8 :8位无符号整型
Int8:8位有符号整型

  • 获取Int最值:(最大值、最小值)
var minValue = Int.min;
var maxValue = Int.max;

Int、UInt : 和平台相关(默认,相当于OC的NSInteger)

  • 在定义变量时,别总是在考虑有无符号、数据长度的问题,尽量使用Int,这样可以保证代码的简洁和可复用性。

  • 存储范围:
    每种数据类型都有各自的存储范围,比如
    Int8的存储范围:-128~127
    UInt8的存储范围:0~255

    在Swift中,如果数值超过了存储范围,编译器会直接报错,下面的语句都会直接报错。
    如果数值超过了存储范围,编译器会直接报错

  • 整数的四种表现形式:
    十进制数:没有前缀
    let a1 = 10
    二进制数:以0b为前缀
    let a2 = 0b1010
    八进制数:以0o为前缀
    let a3 = 0o12
    十六进制数:以0x为前缀
    let a4 = 0xA

5、浮点数
* Swift提供了两种浮点数类型:
Float: 32位浮点型
Double : 64浮点型(默认)
* 精确度:
Float: 至少6小数
Double : 至少15小数
* 浮点数的声明

let a:Float = 3.232
let b:Double = 3.1415926
  • 如果没有明确的说明浮点数的类型,默认是Double类型的。
    FloatDouble类型的变量不能直接进行运算操作,如下
    <code>Float</code>和<code>Double</code>类型的变量不能直接进行运算操作

  • 浮点数的表现形式:
    十进制(没有前缀)
    没有指数:let a1 = 12.7 // 12.7
    有指数:let a2 = 0.127e2 // 12.7

0.127e2 = 0.127 * 10的二次方
MeN = M * 10的N次方

十六进制(以0x为前缀,且一定有指数)

let a3 = 0xA // 10
let a4 = 0xAp1 // 10 * 2的1次方 == 10 * 2
0xMpN = 0xM * 2N次方

6、数字格式(增加额外的0和下划线并不会影响数值原来的大小
数字可以增加额外的格式,使其更容易阅读
* 可以增加额外的0

let money1 = 001988
let money2 = 001988.000
  • 可以增加额外的_,以增加其可读性
let money3 = 100_0000
let money4 = 100_000_000

示例效果图如下:
增加额外的0和下划线并不会影响数值原来的大小

7、Swift中基本运算,数据类型转换
整数和浮点数支持的运算:+、-、*、/、%
Swift中基本运算
在进行基本运算时必须保证类型一致,否则会出错。

8、类型别名
* 使用typealias关键字定义类型的别名

// 给Int类型起个别名叫BoloInt
typealias BoloInt = Int

原类型名称能用在什么地方,别名就能用的什么地方

  • 声明变量、常量
var a:BoloInt = 23
let b:BoloInt = 27
  • 获得类型的最值
let minValue = BoloInt.min
  • 类型转换
let result = BoloInt(3.1416)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值