Fix typo in string-slice.md

pull/117/head
lijinpeng 3 years ago
parent 718c89ea91
commit 97e16a563c

@ -302,7 +302,7 @@ note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
因此在通过索引区间来访问字符串时,需要格外的小心,一不注意,就会导致你程序的崩溃! 因此在通过索引区间来访问字符串时,需要格外的小心,一不注意,就会导致你程序的崩溃!
## 操作UTF8字符串 ## 操作UTF8字符串
前文提到了几使用UTF8字符串的方式下面来一一说明。 前文提到了几使用UTF8字符串的方式下面来一一说明。
#### 字符 #### 字符
如果你想要以Unicode字符的方式遍历字符串最好的办法是使用`chars`方法,例如: 如果你想要以Unicode字符的方式遍历字符串最好的办法是使用`chars`方法,例如:
@ -342,7 +342,7 @@ for b in "中国人".bytes() {
想要准确的从UTF8字符串中获取子串是较为复杂的事情例如想要从`holla中国人नमस्ते`这种变长的字符串中取出某一个子串,使用标准库你是做不到的, 想要准确的从UTF8字符串中获取子串是较为复杂的事情例如想要从`holla中国人नमस्ते`这种变长的字符串中取出某一个子串,使用标准库你是做不到的,
你需要在`crates.io`上搜索`utf8`来寻找想要的功能。 你需要在`crates.io`上搜索`utf8`来寻找想要的功能。
可以考虑尝试下这个库:[utf8 slice](https://crates.io/crates/utf8_slice). 可以考虑尝试下这个库:[utf8_slice](https://crates.io/crates/utf8_slice).
@ -358,7 +358,7 @@ for b in "中国人".bytes() {
其中第一个由`String::from`完成它创建了一个全新的String. 其中第一个由`String::from`完成它创建了一个全新的String.
重点来了,到了第二部分,就是百家齐放的环节,在有**垃圾回收GC**的语言中GC来负责标记并清除这些不再使用的内存对象这些都是自动完成无需开发者关心非常简单好用在无GC的语言是开发者手动去释放这些内存对象就像创建对象一样需要通过编写代码来完成因为未能正确释放对象造成的经济简直不可估量. 重点来了,到了第二部分,就是百家齐放的环节,在有**垃圾回收GC**的语言中GC来负责标记并清除这些不再使用的内存对象这些都是自动完成无需开发者关心非常简单好用在无GC的语言是开发者手动去释放这些内存对象就像创建对象一样需要通过编写代码来完成因为未能正确释放对象造成的结局简直不可估量.
对于Rust而言安全和性能是写到骨子里的核心特性使用GC牺牲了性能使用手动管理内存牺牲了安全那该怎么办为此Rust的开发者想出了一个无比惊艳的办法变量在离开作用域后就自动释放其占用的内存: 对于Rust而言安全和性能是写到骨子里的核心特性使用GC牺牲了性能使用手动管理内存牺牲了安全那该怎么办为此Rust的开发者想出了一个无比惊艳的办法变量在离开作用域后就自动释放其占用的内存:

Loading…
Cancel
Save