Я использую функцию random.value (я думаю, что я видел это поведение и где-то еще), которая, как указано в документации, работает следующим образом.
И 0,0, и 1,0 могут быть возвращены этим свойством.Это поведение отличается от поведения многих других генераторов случайных чисел, которые возвращают значение меньше, но никогда точно не равное 1,0.
Теперь при использовании этого метода примерно так
int[] array = {1, 2, 3, 4, 5};
int number = array[(int)(Random.value * array.length)];
Должен ли я беспокоиться о получении исключения ArrayOutOfRangeException, когда все планеты выстроены в линию?И значит ли это, что меня заставляют делать это ради того, чтобы я мог спать по ночам?
int number = array[(int)((Random.value - Float.epsilon) * array.length)];
Далее я хотел бы знать, почему кто-то может создать случайную функцию, которая невозвращать числа только меньше одного?Есть ли какая-то скрытая выгода от этого?