从String

时间:2016-02-02 11:31:17

标签: java hash

是否可以从字符串生成一个包含12个字符(字母和数字)的哈希值?就像一个md5但只有12个字符?

使用Java。

TKS

1 个答案:

答案 0 :(得分:0)

您可以从Java中的每个对象中提取哈希码(几乎所有内容)。

因此,您可以使用hashCode()方法从String获取哈希值。无法设置您将获得的哈希的长度,但您始终可以将哈希解析为String并使用子字符串截断它。

这样,您可以这样做:

//Get the hash
int hash = yourString.hashCode();
//Parse it to String
String yourHash = Integer.toString(hash);
//Truncate the hash
String truncatedHash = yourHash.substring(0, 12)

如果您希望将哈希值恢复为整数,则只需执行Integer.parseInt(truncatedHash)

这不是最清晰的解决方案,但我不知道你想要达到什么目的。