LINUX.ORG.RU

История изменений

Исправление Ian, (текущая версия) :

Если твои объекты с идентификаторами сохраняются между рестартами приложения, то только UUID.randomUID(), для этого он и придуман. Если не сохраняются, то используй AtomicLong как инкрементный счетчик. Счетчик можно использовать и в первом варианте, но для этого где-то нужно сохранять его значение, откуда потом это значение можно считать при старте приложения.

Если сохранять ты не хочешь, то используй UUID. На экран можно выводить обрезанное строковое представления UUID'а. Например, вместо 550e8400-e29b-41d4-a716-446655440000 выводи 550e8400. Вероятность коллизии и так мала, ну а в случае возникновения программа отработает корректно, а на экране появятся 2 объекта с как бы одинаковыми id. Придумай как на экране id можно «развернуть» в полную форму при необходимости.

Исправление Ian, :

Если твои объекты с идентификаторами сохраняются между рестартами приложения, то только UUID.randomUID(), для этого он и придуман. Если не сохраняются, то используй AtomicLong как инкрементный счетчик. Счетчик можно использовать и в первом варианте, но для этого где-то нужно сохранять его значение, откуда потом это значение можно считать при старте приложения.

Если сохранять ничего ты не хочешь, то используй UUID. На экран можно выводить обрезанное строковое представления UUID'а. Например, вместо 550e8400-e29b-41d4-a716-446655440000 выводи 550e8400. Вероятность коллизии и так мала, ну а в случае возникновения программа отработает корректно, а на экране появятся 2 объекта с как бы одинаковыми id. Придумай как на экране id можно «развернуть» в полную форму при необходимости.

Исходная версия Ian, :

Если твои объекты с идентификаторами сохраняются между рестартами приложения, то только UUID.randomUID(), для этого он и придуман. Если не сохраняются, то используй AtomicLong как инкрементарный счетчик. Счетчик можно использовать и в первом варианте, но для этого где-то нужно сохранять его значение, откуда потом это значение можно считать при старте приложения.

Если сохранять ничего ты не хочешь, то используй UUID. На экран можно выводить обрезанное строковое представления UUID'а. Например, вместо 550e8400-e29b-41d4-a716-446655440000 выводи 550e8400. Вероятность коллизии и так мала, ну а в случае возникновения программа отработает корректно, а на экране появятся 2 объекта с как бы одинаковыми id. Придумай как на экране id можно «развернуть» в полную форму при необходимости.