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

Rust中如何打印不带引号的字符串?解决玩家姓名输出带引号问题

Rust打印玩家姓名不带引号的解决方法

你当前使用{:X?}和{:?}调用的是Debug格式化规则,Rust里String类型的Debug输出会自动添加引号。要去掉引号,改用默认的Display格式化(即{})即可——String实现了Display trait,会直接输出字符串本身的内容,不会额外添加引号。

修改后的代码:

#[derive(Debug, Clone)]
struct Player {
    name: String,
    score: i32,
    turn_count: i32,
}

fn main() {
    let players: Vec<Player> = ...;
    for player in players {
        // 用{}代替{:X?}来格式化姓名
        println!("{} {:?}", player.name, player.score);
    }
}

如果你的玩家姓名原本不是大写,想要输出大写格式的姓名,可以调用String的to_uppercase()方法:

println!("{} {:?}", player.name.to_uppercase(), player.score);

修改后会得到你想要的输出:

STUART 23
KEVIN 0
BOB 5

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 22:06:33