String Playground Swift字符串用法详解
Swift 的字符串用法,灵活又有点小讲究。String.playground
这个资源挺适合你花点时间玩一玩,专门拆解了String
的一些常见用法和底层细节,比如值类型的特性、Unicode、字符串切片这些事,基本都覆盖了。
字符串是值类型,赋值会复制内容,不是引用。这在 Swift 里挺常见的,安全性高,线程用着也放心。不过要注意,大量复制会拉性能,你要是做字符串拼接操作,推荐看看StringBuilder
或者append(contentsOf:)
。
Swift 字符串是 Unicode 兼容的,支持各种语言的字符。你可以用\u{0061}
这样方式写个‘a’,是不是有点底层操作的感觉?而且它内部字符不是char
,是按Character
来的,支持表情、组合字符之类的。
访问字符的方式也比较,不支持myStr[0]
这种,得用myStr.index(myStr.startIndex, offsetBy: 0)
。看着麻烦点,其实是为了兼容各种复杂字符。这也提醒你,在中文、表情符号那类文本时得更小心。
顺手贴几个延伸阅读,想搞清楚值类型和引用类型怎么回事,可以看看这个 C#的例子;字符串索引相关的内容,Python 那边也有讲,思路差不多。
如果你平时写 Swift,或者准备写些字符串的逻辑,String.playground.zip
真的蛮值得一看,练练手也好,挖点底层细节也不错。
9.88KB
文件大小:
评论区