Swift 3 and Swift 2.3 change

One case:

1)when swift 3 to swift 2.3,just remove “_” before parameter,
correspondingly when swift 2.3 to swift 3,just add “_” before parameter,

Example:
Swift3:
typealias LMLocationCompletionHandler = ((_ latitude:Double,_ longitude:Double,_ status:String,_ verboseMessage:String,_ error:String?)->())?

Swift2.3
typealias LMLocationCompletionHandler = ((latitude:Double,longitude:Double,status:String,verboseMessage:String,error:String?)->())?

2) add fileprivate or remvoe before defining Variables and methods
swift 3 : fileprivate var reverseGeocodingCompletionHandler:
swift 2.3 : var reverseGeocodingCompletionHandler:
3)
Sometimes,need reset parameters
like this CLAuthorizationStatus.NotDetermined:
just reselect NotDetermined will fix “have no member” error
4) valueForKey - value
Swift 3:
resultDict.value(forKey: “results”) as! NSArray
Swift 2.3:
resultDict.valueForKey(“results”) as! NSArray
5)method object - objectForKey
Swift 3:
locationDict.object(forKey: “formatted_address”) as! Nsstring
Swift 2.3
locationDict.objectForKey(“formatted_address”) as! Nsstring

6)NSArray’s indexOfObject
Swift 3:
inArray.indexOfObject(passingTest:)
Swift 2.3

7)
Swift 3:
let urlwithPercentEscapes = myurlstring.addingPercentEncoding( withAllowedCharacters: .urlQueryAllowed)
Swift 2.3:
let urlwithPercentEscapes = myurlstring.stringByAddingPercentEncodingWithAllowedCharacters( NSCharacterSet.URLQueryAllowedCharacterSet())

the difference are parameters’s first character is not same. maybe changed from lower case to upper case

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...