[英]Generate a unique integer based on given string
關於這個問題已經有很多答案,但是我找不到想要的答案。
我需要從給定的字符串生成唯一的負ID(int)。 如果也有解碼,但不是強制性的,那會很高興。
您可以嘗試使用myString.GetHashCode()
它不能保證唯一),但是將為相同的字符串明確返回相同的鍵。
顯然,沒有這種轉換。 int
大小受32位限制,而string
大小幾乎不受限制。 除非對字符串施加一些限制,否則將發生沖突。
無法為任意長度的字符串生成唯一的int。
int有32位數據,一個100個字符的字符串(假設C#)將有1600位數據,因此您將至少發生1600/32次沖突。
[有趣]
你可以 :
string a = "dgfadg";
var bytes = System.Text.Encoding.Unicode.GetBytes(a);
BigInteger integer= new BigInteger(bytes);
[/很有趣]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.