分享好友 编程语言首页 频道列表

Rust学习(12):slice rust教程pdf

rust文章/教程  2023-02-09 09:100

slice是String的一部分引用。类似切片。

字符串slice

slice获取值的使用权但是没有得到值得所有权

fn main() {
    let s = String::from("Hello world");

    let hello = &s[0..5]; //[start, end)
    let world = &s[6..11]; //[start, end);
    println!("{},{}", hello, world);

    let hello = &s[..5]; //[0, end)
    let world = &s[6..]; //[start, len);
    let string = &s[..]; //[0, len)
    println!("{},{}, {}", hello, world, string);


    let hello = &s[0..=4]; //[start, end]
    let world = &s[6..=10]; //[start, end]
    println!("{},{}", hello, world);
}

Rust学习(12):slice

其他slice

fn main() {
    let a = [1, 2, 3, 4, 5];
    let slice = &a[1..3];   //类型是&[i32]

    
    println!("{}, {}", slice[0], slice[1]);
}

参考:https://kaisery.github.io/trpl-zh-cn/ch04-03-slices.html

查看更多关于【rust文章/教程】的文章

展开全文
相关推荐
反对 0
举报 0
评论 0
图文资讯
热门推荐
优选好物
更多热点专题
更多推荐文章
Rust到底值不值得学--Rust对比、特色和理念
前言其实我一直弄不明白一点,那就是计算机技术的发展,是让这个世界变得简单了,还是变得更复杂了。当然这只是一个玩笑,可别把这个问题当真。然而对于IT从业者来说,这可不是一个玩笑。几乎每一次的技术发展,都让这个生态变得更为复杂。“英年早秃”已经成

0评论2023-03-08818

全栈程序员的新玩具Rust(三)板条箱
上次用到了stdout,这次我们来写一个更复杂一点的游戏rust的标准库叫做std,默认就会引入。这次我们要用到一个随机数函数,而随机数比较尴尬的一点是这玩意不在标准库中,我们要额外依赖一个库。很多编程方案都有自己的模块化库系统,rust也不例外,不过rust

0评论2023-02-10729

【Rust】标准库-Result rust数据库
环境Rust 1.56.1VSCode 1.61.2概念参考:https://doc.rust-lang.org/stable/rust-by-example/std/result.html示例main.rsmod checked {#[derive(Debug)]pub enum MathError {DivisionByZero,NonPositiveLogarithm,NegativeSquareRoot,}pub type MathResult =

0评论2023-02-09978

【Rust】标准库-引用 rust 数据库框架
环境Rust 1.56.1VSCode 1.61.2概念参考:https://doc.rust-lang.org/stable/rust-by-example/std/rc.html示例rust 使用 Rc 来实现引用计数。main.rsuse std::rc::Rc;fn main() {let rc_examples = "Rc examples".to_string();{println!("--- rc_a is created

0评论2023-02-09638

rust 打印当前时间
let now = time::now();let f_now = time::strftime("%Y-%m-%dT%H:%M:%S", now).unwrap();println!("now: {:?}", f_now);

0评论2023-02-09689

【Rust】线程 rust编程语言
环境Rust 1.56.1VSCode 1.61.2概念参考:https://doc.rust-lang.org/stable/rust-by-example/std_misc/threads.html示例main.rsuse std::thread;const N_THREADS: u32 = 10;fn main() {let mut children = vec![];for i in 0..N_THREADS {children.push(threa

0评论2023-02-09956

更多推荐