You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Rust中如何将切片元素复制到新数组?是否有语法糖实现?

有没有简洁的方式创建包含单个元素和另一切片元素的数组?

我想找一种简洁的方法,创建一个已包含某个元素的数组,同时把另一个切片的元素也复制进去。我原本想用类似解构的语法实现,代码如下:

fn main() {
    let cmd: u8 = 1;
    let config: &[u8; 2] = &[2, 3];
    let bytes = &[cmd, ..config];
}

(注:这段代码无法运行,是我期望的写法)

本质上,我想知道有没有语法糖可以替代下面这两种实现方式:

方式一

fn main() {
    let cmd: u8 = 1;
    let config: &[u8; 2] = &[2, 3];

    let mut bytes: [u8; 3] = [0; 3];
    bytes[0] = cmd;
    bytes[1..].copy_from_slice(config);
    
    println!("{:?}", bytes);
}

方式二

fn main() {
    let cmd: u8 = 1;
    let config: &[u8; 2] = &[2, 3];
    let bytes = [cmd, config[0], config[1]];
    
    println!("{:?}", bytes);
}

内容的提问来源于stack exchange,提问作者Elias

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 13:40:33