Swift的Optional、Array

一、Optional

1、可选型声明关键符号?,每个类型都有可选性,比如下面声明为整型可选性。


var errorCode: Int? =404

print(errorCode)

print(errorCode!)


2、可选型解包关键符号!,例如,下方errorCode解包后就是一个整型变量。


//解包后就是整型

var aInt = errorCode!

aInt

var bInt = 0;

bIntaInt;

bInt


3、if let 表示判断可选性变量不为nil,Swift中的nil和OC中不同,并不是代表空,而是一种特定的类型,而且变量不会被赋值默认值,所以声明后,如果要使用该变量必须为改变量赋值。


var errorMessage: String? ="Not Found"

//判断errorMessage是否有值,当不为nil时,解包成功,执行if语句

if let errorMessage =errorMessage

{

    errorMessage.uppercaseString

}


//也可以写成:此种写法含义与上面if let相同

errorMessage?.uppercaseString

//意义跟上面两种完全不同,此时代表你确定errorMessage不为nil,所以强制解包。当errorMessage这个字符串可选型为nil时,编译会爆error

errorMessage!.uppercaseString


4、我们调用第三方的APK的时候可能errorMessage?.uppercaseString之后返回的还是一个可选型,所以我们可以继续?.方法名,这种就叫做可选型的链条(Optional Chaining

//返回值也是可选型,因为可能会转换失败,

errorMessage?.uppercaseString


5、a ?? b  相当于 a !=nil ? 1 : 2

6、隐士可选型

var name: String! =nil

//使用的时候必须赋值,不赋值会报错,无法执行

name = "not found"

"This message is "+name


二、数组

1、声明数组

//整型Array

var aArray = ["1","2","3","4","5"]

//相当于

var bArray: [String] = ["1","2","3","4","5"]

//swift 字符串双引号之内默认是String,哪怕只有一个字符,如果想要声明Character显示声明

var cArray: [Character] = ["1","2","3","4","5"]


//或者也可以写成

var dArray: Array = ["1","2","3","4","5"]

//或者

var eArray: Array<String> = ["1","2","3","4","5"]


2、NSArray

//array NSArray最大的区别是NSArray可以放不同类型的数据

var gArray: NSArray = ["1",2,"3","4","5"]

//array中放不同的数据 会默认把数组里面的类型转成object 即:Array[object]

var fArray: Array = ["1",2,"3","4","5"]




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值