也许这没有意义,但我需要一个Firebase push id的整数表示,就像[哈希]
一样我希望能够以与创建push ID相同的方式从Firebase Hash创建Java Integer。 这是一个小实验,但想看看它是否可以完成。
假设我有Firebase推送ID -Kh7JD01FqBpzfCt_dVX
并且我通过哈希函数运行它,我每次都会使用相同的哈希字符串。
但是,如果我可以通过一些“整数”函数运行-Kh7JD01FqBpzfCt_dVX
,我每次都会这样做会得到相同的整数
是的,我知道我可以在2,147,483,647范围内创建随机整数,并希望不碰撞。但我觉得这比使用上面的方法
更安全答案 0 :(得分:0)
Firebase push IDs can hold 2^120 unique values。这是一个无法用整数捕获的范围。
使用字符串的hashCode()
可以保证为您提供相同的数字(每次long)
。但是对于给定的输入字符串,该哈希代码不能保证唯一:有多个将提供相同哈希码的字符串。