2013-05-31 60 views
0

如何獲得散列數據的真實價值?在獲取哈希碼後,您是否仍然可以獲取數據的真實價值? 還是有任何代碼可以反轉輸出。如何獲得散列數據的真實價值?

String ida = new String(txtID.getText().toString()); 
    int idb = ida.hashCode(); 

    codeD.setText("result: " + ida); 

我已經得到txtID(已輸入用戶)的哈希碼,但現在我想已經沒有散列調用IDA的真正價值。

+0

爲了澄清,你有一些散列數據'idb',你想將原始數據恢復正確? – Isaac

+0

關於hashCode()的其他兩個相同的問題已經給出了Java hashCode()的完全有效和正確的解釋 - 您似乎並不明白hashCode()是**不是**加密*方法。 – kaderud

+0

不可能。或者,您可以將哈希碼和對象放在哈希映射中進行搜索選項。 – Rudy

回答

2

簡答題:沒有。

長答案: 哈希值是一個快速的單向計算,用於粗略地識別某個項目。在Java中,散列碼通常用於將某些東西放入Map中。散列碼用於在HashMap中用作鍵時標識另一個Object。這並不意味着要存儲數據,只有足夠的不同才能防止衝突。很有可能有兩個具有相同散列的對象。