頭條地址:https://www.ixigua.com/i676544267458235648...
B站地址:https://www.bilibili.com/video/av78062009?...
網易雲課堂地址:https://study.163.com/course/introduction....
1、字串slice
字串 slice(string slice)是 String 中一部分值的引用。例子:
let s = String::from("hello world");
let hello = &s[0..5]; //包含下標0,不包含5
let world = &s[6..11];//包含下標6,不包含下標11
let hello = &s[0..=4];//包含下標4
let world = &s[6..=10];//包含下標10
也可以寫為:
let s1 = &s[2..];
let s2 = &s[..3];
注意:字串 slice range 的索引必須位於有效的 UTF-8 字元邊界內,如果嘗試從一個多位元組字元的中間位置建立字串 slice,則程式將會因錯誤而退出。出於介紹字串 slice 的目的,本部分假設只使用 ASCII 字符集。
2、字面值就是slice
字串字面值被儲存在二進位制檔案中嗎。
let s = "Hello, world!";
這裡 s 的型別是 &str:它是一個指向二進位制程式特定位置的 slice。這也就是為什麼字串字面值是不可變的;&str 是一個不可變引用。
3、其它型別的slice
let a = [1, 2, 3, 4, 5];
let slice = &a[1..3];
本作品採用《CC 協議》,轉載必須註明作者和本文連結