【发布时间】:2019-05-31 13:56:48
【问题描述】:
在 Rust 中是否有更好的方法来做到这一点?
let mut current_index = rng.gen_range(0, 5);
while current_index == previous_index {
current_index = rng.gen_range(0, 5);
}
【问题讨论】:
在 Rust 中是否有更好的方法来做到这一点?
let mut current_index = rng.gen_range(0, 5);
while current_index == previous_index {
current_index = rng.gen_range(0, 5);
}
【问题讨论】:
不确定是否是惯用的,但这可以避免循环:
let current_index = (previous_index + rng.gen_range(1, 5)) % 5;
【讨论】:
取决于你想做什么,可能是SliceRandom::choose_multiple 或SliceRandom::shuffle。
【讨论】: