Pratham111666 Ответов: 1

⦁ В конструкторе автоматически генерируется item_id, начиная с 101 префикса "C" fexample-C101, S102, S103, C104 и т. д


⦁ автоматической генерации случайных это должно быть сделано в Java пожалуйста лфвэ мне на вопрос выше

Что я уже пробовал:

автоматическое генерирование случайных это должно быть сделано в Java пожалуйста лфвэ мне на вопрос выше

phil.o

А что вы пробовали? Где ты застрял?

CPallini

Похоже, вы собираетесь генерировать последовательный идентификатор, а не случайный.
Вы должны лучше детализировать свой сценарий, чтобы получить помощь.

1 Ответов

Рейтинг:
2

OriginalGriff

Автоматическая генерация с использованием случайных величин - плохая идея: поскольку случайные числа именно таковы - случайны-они могут повторяться либо сразу, либо в более поздний момент. Это означает, что при создании нового значения идентификатора вам нужно проверить, было ли оно использовано, и если оно было переработано.

В зависимости от размера случайного значения - а вы показываете только 3 цифры, так что ваше "фазовое пространство" составляет 1000 значений или меньше - это делает построение объектов недетерминированным с точки зрения времени, до такой степени, что по мере увеличения числа объектов шансы повторений приближаются к единице, и конструктор никогда не завершается.

Если вам нужны последовательные значения, то используйте последовательные значения - создайте static переменная и инкремент ее после того, как вы ее использовали - но имейте в виду, что если вы работаете в многопоточной или многопользовательской среде, то вам нужно будет организовать потокобезопасность, чтобы вы периодически "дублировали" значения.