swift 总结

一 符号

 
 

问号?

a.声明时添加?,告诉编译器这个是Optional的,如果声明时没有手动初始化,就自动初始化为nil

b.在对变量值操作前添加?,判断如果变量时nil,则不响应后面的方法。

叹号!

a.声明时添加!,告诉编译器这个是Optional的,并且之后对该变量操作的时候,都隐式的在操作前添加!

b.在对变量操作前添加!,表示默认为非nil,直接解包进行处理

 

二、枚举相关值

1 model 文件

public enum trade
{
    case Buy(String, Int)
    case Sell(String, Int)
}
class KGModel: NSObject,KGModelInterface {
    
}


2 ViewController 文件

class ViewController: UIViewController,UITextViewDelegate {
    var lastView:KGView!
    var viewModel:KGModel!
    override func viewDidLoad() {
        super.viewDidLoad()
        self.viewModel = KGModel.init()
        self.lastView = KGView.init(frame: CGRect(x:100,y:100,width:100,height:100))
        lastView.model = self.viewModel
        self.view.addSubview(self.lastView)
        let buy  = trade.Buy("buy", 500)
        let sell  = trade.Sell("sell", 1000)
        lastView.testEnum(tr: buy)
        lastView.testEnum(tr: sell)
    }

}


输出 start = buy end = 500
        start = sell end = 1000


三、接口继承(代理)

1 接口文件

public protocol KGModelInterface:NSObjectProtocol
{
    func testInterface() -> Void
}


2 继承接口文件

 class KGModel: NSObject,KGModelInterface {
    func testInterface() {
        print("接口函数测试")
    }

}

3. 调用接口方法测试

   viewModel.testInterface()


输出 接口函数测试

从例子可以 理解了 从OC到swift的借口类型传递的编程方法过渡及使用。


四  使用try?  

try?会将错误转换为可选值,当调用try?+函数或方法语句时候,如果函数或方法抛出错误,程序不会发崩溃,而返回一个nil,如果没有抛出错误则返回可选值。

使用try!

使用try!可以打破错误传播链条。错误抛出后传播给它的调用者,这样就形成了一个传播链条,但有的时候确实不想让错误传播下去,可以使用try!语句。




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值