Как сделать вероятность того, что элемент будет выбран в два раза ниже? - PullRequest
0 голосов
/ 23 марта 2019

Этот код выбирает случайное число из 1-27 и присваивает это число индексу.

Random A = new Random();
int picture = A.nextInt(27);

driver.findElement(By.xpath("//android.widget.RelativeLayout[@index='"+picture+"']")).click();
Thread.sleep(2000);

Допустим, в коде указано число 8, как мне сделать так, чтобы вероятность выбора 8 два раза подряд была ниже?

1 Ответ

0 голосов
/ 23 марта 2019

Создайте переменную типа int, например lastChosen, которая отслеживает последний элемент.

Random A = new Random();
int picture = A.nextInt();
if(lastChosen == picture){
   picture = A.nextInt();
}
lastChosen = picture;

Это уменьшает вероятность того, что один и тот же элемент будет выбран дважды подряд с 1/n до 1/(n^2), где n - количество возможных случайных цифр, которые вы можете получить

...