黑马程序员技术交流社区
标题:
弱弱的问一下哈希值是什么
[打印本页]
作者:
陆杨
时间:
2011-9-6 22:43
标题:
弱弱的问一下哈希值是什么
在毕老师的集合视频部分看到里哈希值这么个东西。但是还不是很明白这玩意到底是个什么东西,有什么用?各位帮忙解说解说,不胜感谢!
作者:
黑马李刚
时间:
2011-9-6 22:59
[code=java]
class L
{
public static void main(String args[]) throws IOException
{
Object obj=new Object();
System.out.println(obj);
}
}[/code]输出结果为:
java.lang.Object@a90653
a90653是哈希值
作者:
匿名
时间:
2011-9-6 23:04
通过它可以找到 对象在内存的位置,每个对象的哈希值应该是不一样的
作者:
匿名
时间:
2011-9-6 23:36
哈希算法将任意长度的二进制值映射为固定长度的较小二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计算上是不可能的。
消息身份验证代码 (MAC) 哈希函数通常与数字签名一起用于对数据进行签名,而消息检测代码 (MDC) 哈希函数则用于数据完整性。
实例:小红和小明可按下面的方式使用哈希函数以确保数据完整性: 如果小红对小明编写一条消息并创建该消息的哈希,则小明可以在稍后散列该消息并将他的哈希与原始哈希进行比较。如果两个哈希值相同,则该消息没有被更改;但是,如果值不相同,则该消息在小红编写它之后已被更改。为了使此系统运行,小红必须对除小明外的所有人保密原始的哈希值。 以上问的百度……:D
作者:
匿名
时间:
2011-9-7 00:17
每个对象可以OVERRIDE hashcode 方法,作用是在内存中通过哈希算法生成一块特定区域,把相关对象放在那里(哈希值),如果生成相同类型对象,先去找同类的HASHcode,也就是在内存的特定的区域找,不会在要求去内存的别的地方开辟一个新的空间存对象。但是这会造成内存泄露的问题。具体请参阅【26_张孝祥Java高新技术_ArrayList_HashSet的比较及Hashcode分析】
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2