直覺上告訴我們,這兩個方法并沒有大的區(qū)別。
在實際使用上,也確實沒有什么區(qū)別,在Playground上執(zhí)行下面代碼。
import Foundation
let str = "I'm String!"
print(str.characters.count) // Print 11
print((str as NSString).length) // Print 11
但是,這里有一個坑~~~
如果你的字符串包含有 emoji 字符,不好意思,characters.count 并不會將它計算在內(nèi)。
import Foundation
let str = "I'm String!??"
print(str.characters.count) // Print 12
print((str as NSString).length) // Print 13
具體原因請看 Apple 官方對 characters 的注釋。