Есть ли способ генерировать UUID типа Int64 в iOS? - PullRequest
0 голосов
/ 10 сентября 2018

Я знаю, что мы можем сгенерировать UUID в iOS, используя

let uuid = UUID().uuidString

Но это строка, верно?Я хочу использовать это для генерации идентификатора в моей таблице базовых данных, поэтому мне нравится генерировать целочисленный UUID для быстрого поиска (целочисленный поиск быстрее, чем поиск строк в SQLite, верно?)

Простой способ, который я увидел, это:

uuid.hashValue

Но будет ли это всегда уникальным?

Я нашел это для java генерируем UUID типа long

Это то же самое дляIOS?И я, возможно, не захочу так много уникальности, просто достаточно, чтобы предотвратить столкновение между 2, 3 устройствами.

1 Ответ

0 голосов
/ 10 сентября 2018

Вы можете создать объект NSMutableData из NSUUID с этим кодом:

let uid = NSUUID.UUID()

// data object with size
let data = NSMutableData(length: 16)

// fill the bytes from the uuid
myUuid.getUUIDBytes(UnsafeMutablePointer(data.mutableBytes))
...