我在Swift 1.2中工作时发现了这一点.我把它报告为一个bug.但不知道为什么?
import UIKit
var str = " LHR ?? SFO "
([str] as NSArray).componentsJoinedByString("") // Will work
join("", [str]) // Hangs forever
Run Code Online (Sandbox Code Playgroud)
Apple 在 swift 2.0 中修复了这个问题,join并被另一种joinWithSeparator(separator: String) -> String与标志配合良好的方法所取代。
这是代码片段。
\n\nvar str = " LHR \xe2\x9c\x88\xef\xb8\x8f SFO "\n\n([str] as NSArray).componentsJoinedByString("") // Will work\n\n[str].joinWithSeparator("")\nRun Code Online (Sandbox Code Playgroud)\n\n输出
\n\n LHR \xe2\x9c\x88\xef\xb8\x8f SFO \n LHR \xe2\x9c\x88\xef\xb8\x8f SFO \n LHR \xe2\x9c\x88\xef\xb8\x8f SFO \nRun Code Online (Sandbox Code Playgroud)\n