[swift]-閉包的簡單使用、定義

1:swift中閉包和oc中block同樣都是經常使用於回調閉包也是一種特殊函數json

 

2:代碼演示:swift

import UIKit

class HttpTools: NSObject {
    
    // 閉包的類型:(參數列表) -> (返回值類型)
    func loadData(callBack : (jsonData : String) -> ()) {
        dispatch_async(dispatch_get_global_queue(0, 0)) {
            print("發送網絡請求\(NSThread.currentThread())")
            
            dispatch_sync(dispatch_get_main_queue(), { 
                print("獲取到數據,而且進行回調:\(NSThread.currentThread())")
                callBack(jsonData: "jsonData數據===================")
                
            })
        }
    }

}

 

import UIKit

class ViewController: UIViewController {
    
    // 建立屬性的同時初始化對象
    var tools : HttpTools = HttpTools()
    
    override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
        print("-----");
        tools.loadData { (jsonData) in
            print("拿到了json數據了:\(jsonData)")
        }
    }
}

 

3:閉包的定義格式:  (參數列表) -> (返回值類型)網絡

如:callBalk : (jsonData : String) -> ()閉包

 

 

4:swift中:標誌符在前 : 類型   &&  OC中:類型在前 * 標誌符名字async

 

意見反饋郵件:1415429879@qq.com
歡迎大家的閱讀和讚揚、謝謝!
ide

相關文章
相關標籤/搜索