Rust 编程视频教程对应讲解内容-slice

视频地址

头条地址: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 协议》,转载必须注明作者和本文链接

令狐一冲

讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!