2015年2月到2015年6月8日(2.0发布)Swift主要更新

说明:限于《语言指引》部分的主要更新

操作符

移除了溢出除、溢出取余操作符

集合

集合类Set(添加)

Set中存放不能重复的元素,无序。存放的元素需要遵循hashable协议。

控制流

添加新的控制语句:guard

guard语句做尝试操作,它的else分支用来处理意外情况。

添加API可用检查语句 #available

可以用来针对不同的操作系统作分支

修改do-while为repeat-while

错误处理(添加)

添加章节

如何表示错误

用一个遵循ErrorType协议的枚举表示各种可能的错误

抛出错误

throw关键字放在函数/方法/闭包的参数之后,返回类型的箭头前。没有用throw关键字,不能抛出错误。
调用一个抛出错误的函数/方法/闭包,前面要用try。

捕获和处理错误

do-catch格式:
do {

    try function that throws

    statements

  } catch pattern {

    statements

}

尽量确保能捕获所有错误。
catch不指定匹配模式将匹配所有错误。

阻止错误传播

try!(强制try)调用,不必处理错误。如有错误发生,会导致运行时错误。

指定清理行为

控制权交接前始终会执行的代码:defer语句,类似java中的finally。
多个defer语句按照定义顺序倒叙执行。

协议

协议可以扩展了(添加)

协议扩展给协议实现类型添加方法和属性,也可以添加协议要求的默认实现,但以类型的实现为优先。

扩展协议可以加条件(添加)

协议扩展可以添加条件,使用where从句限制对哪些特定的实现类型才进行扩展

当一个协议实现满足多个扩展条件(添加)

一个协议实现满足多项扩展条件,如何选取??

访问控制

单元测试中的访问控制(添加)

单元测试目标的访问控制。使用@testable对测试开放,具体咋用?

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值