【Rust】可选枚举(四)

环境

  • Time 2022-03-25
  • Rust 1.59.0

示例

get_or_insert_with

fn main() {
    let mut name = Some("JiangBo");
    println!("{:?}", name.get_or_insert_with(|| "Rust"));
}

take

fn main() {
    let mut name = Some("JiangBo");
    name.take();
    println!("{:?}", name);
}

replace

fn main() {
    let mut name = Some("JiangBo");
    name.replace("Rust");
    println!("{:?}", name);
}

zip

fn main() {
    let name = Some("JiangBo");
    println!("{:?}", name.zip(Some("Rust")));
}

copied

fn main() {
    let name = Some(&44);
    println!("{:?}", name.copied());
}

clone

fn main() {
    let name = Some(&44);
    println!("{:?}", name.clone());
}

transpose

fn main() {
    let name: Option<Result<&str, u32>> = Some(Ok("JiangBo"));
    println!("{:?}", name.transpose());
}

flatten

fn main() {
    let name = Some(Some("JiangBo"));
    println!("{:?}", name.flatten());
}

总结

了解了可选枚举中相关的一些方法。

附录

posted @   jiangbo4444  阅读(49)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2020-06-28 【Java】RSA 生成密钥对
点击右上角即可分享
微信分享提示