当你在使用Swift时会发现一些常用的函数不!见!了!
比如
String: s.count() s.contains()
Array: a.indexOfObeject(t:<T>)
我看网上有人说用extension Array的方法调用NSArray的indexOfObject来实现
extension Array { func indexOfObject(object:AnyObject) -> Int? { return (self as NSArray).indexOfObject(object) } }
这种方法是比较聪明,但是是不是有点背离了Swift的初衷呢? 既然是新语言不可能想不到这些用户用惯的方法呀~~
最近在碰到这种问题的时候看到最多的解决方案是global function,的确,Swift让这些方法更通用了~~ 所以以后不要只习惯与在实例后面加.来找方法了,记住一些global function是有必要的。
下面列出我碰到的global function,剩下的以后补充
find(<#domain: C#>, <#value: C.GeneratorType.Element#>) countElements(<#x: T#>) contains(<#seq: S#>, <#predicate: (S.GeneratorType.Element) -> L#>)