正如问题所述,我如何实现这一点?
如果我有这样的代码:
let a = "29";
for c in a.chars() {
println!("{}", c as u32);
}
对于代码2,我得到的是unicode点:
- 50
- 57
我想把这些字符解析成实际的数字.
正如问题所述,我如何实现这一点?
如果我有这样的代码:
let a = "29";
for c in a.chars() {
println!("{}", c as u32);
}
对于代码2,我得到的是unicode点:
我想把这些字符解析成实际的数字.
char::to_digit(radix)
就够了.radix
表示"基数",即10表示十进制,16表示十六进制,等等:
let a = "29";
for c in a.chars() {
println!("{:?}", c.to_digit(10));
}
它返回一个Option
,所以你需要将其设置为unwrap()
,或者更好:expect("that's no number!")
.您可以在the appropriate chapter of the Rust book中阅读有关正确错误处理的更多信息.