Random 获取与前一个不同的随机数的惯用方法?

Random 获取与前一个不同的随机数的惯用方法?,random,rust,idioms,Random,Rust,Idioms,有没有更好的方法在生锈的情况下这样做 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; 不确定惯用,但这样可以避免循环: let

有没有更好的方法在生锈的情况下这样做

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;

不确定惯用,但这样可以避免循环:

let current_index = (previous_index + rng.gen_range(1, 5)) % 5;

取决于你想做什么,或者。

取决于你想做什么,或者