Вы не можете получить случайное начальное значение по умолчанию.
Processing's source code Заканчивать (в частности random()
и randomSeed()
функции), чтобы увидеть, что обработка использует экземпляр класса Random
для генерации случайных чисел. У этого класса нет общедоступного способа получить доступ к его начальному значению, и даже если это так, то internalRandom
, используемый обработкой, в любом случае вам не будет доступным.
Что вы можете сделать, это создать свое собственное начальное значение, а затем сохранить его в своей переменной. Что-то вроде этого:
long seed;
void setup(){
seed = (long)random(1000);
randomSeed(seed);
println("Seed value: " + seed);
}
Как вы придумали это семя зависит от вас. Здесь я генерирую случайное семя между 0
и 1000
, но в реальной жизни это может быть любое значение long
.
Вы также можете ввести это от пользователя, чтобы иметь повторяющееся случайное поведение на основе входного значения.
Спасибо, я хотел убедиться, что не было более элегантного способа сделать это. – SorenLantz
@SorenLantz Нет проблем. Обратите внимание, что вы всегда можете пометить ответ как правильный, если он вам поможет. :п –