这几天为了设计缓存机制,查阅了很多缓存方面的资料,作为没有实战经验的小白自然被各种性能报告、内存机制、集群方式搞得一头雾水。但查了这些资料后,对各个cache的特点有了感性的了解。
ehcache是最后调研的cache,他有个明显不同的地方:缓存中的键和值都可以是object类型的对象。只可以是object这较好接受,大概是对象的序列化支持的,而ehcache本身是纯java实现,这是它得天独厚...
分类:
其他好文 时间:
2014-07-23 21:05:33
阅读次数:
309
做了几年开发,一直不理解HASH算法的原理,今天偶从百度知道上看到一个牛人神一样的理解...
分类:
其他好文 时间:
2014-07-23 13:24:06
阅读次数:
254
我有一个哥们去参加了面试,面试官这样问一个Java问题: 你说一下java对象的equals方法调用什么方法呢?我这个哥们想了想,回答说“应该是比较的引用”。听了这个答案之后,那个面试官摇头晃脑的说:“不对,你回答的不对,equals方法调用的是hashCode方法”。于是乎,我那个技术还不错的哥们就悲壮地栽在这道题目上了。
今天晚上,西安历史上少有的热,那就好好总结一下这个题目的...
分类:
编程语言 时间:
2014-07-22 23:57:57
阅读次数:
589
GroupBy是按照Item的hashCode来分组的,所以Item最好是override GetHashCode()方法 namespace?ConsoleApplication5
{
????class?Program
????{
????????static?void?Main(string[]?args)
?...
分类:
其他好文 时间:
2014-07-22 08:22:36
阅读次数:
253
java 的数据类型分为“基本数据类型” 和“引用数据类型”: ---》在基本数据类型的比较中,== 比的就是基本数据类型变量中所保存的值。 ---》在引用数据类型的比较中,== 才比较的是变量所指向的对象的地址。hashCode()返回该对象的哈希码值,该值通常是一个由该对象的内部地址转换而来的整...
分类:
编程语言 时间:
2014-07-22 00:10:34
阅读次数:
264
Lombok是一种JavaArchive(JAR)文件,可用来消除Java代码的冗长。通过在开发环境中实现Lombok,开发人员可以节省构建诸如hashCode()和equals()这样的方法以及以往用来分类各种accessor和mutator的大量时间。先到http://projectlombok...
分类:
其他好文 时间:
2014-07-21 10:03:32
阅读次数:
231
打个比方,hashCode() 方法是好比是字典前面的目录,有了这个目录你查东西就会快的多,equals方法是比较的内容,就好比根据目录查内容。同一个的内容自然要有唯一的目录,所以hashCode和equals方法一般一起实现。比如Student类的equals方法根据name,school,age...
分类:
其他好文 时间:
2014-07-18 20:25:51
阅读次数:
130
hashCode方法的作用:当有一个对象要存入hash集合的时候,JVM首先会调用hashCode方法获取该对象的哈希值,然后根据哈希值找到相应的存储区域,最后取出该区域的所有元素与该对象进行equals比较,如果相等,不存入该元素,否则,存入。这样不用遍历集合中的所有元素就能的到我们想要的结果,提...
分类:
编程语言 时间:
2014-07-18 17:23:53
阅读次数:
244
Iterator(foreach)遍历时只能通过iterator去删除(添加)元素,不能直接通过集合对象删除或添加元素SetHashSet底层是一个HashMap HashSet添加元素,先判断hashCode,Set中没有相同的则直接添加,Set中有相同的元素,则进一步判断equals,不同则添加...
分类:
编程语言 时间:
2014-07-18 08:24:18
阅读次数:
225
Hadoop代码测试环境:Hadoop2.4原理:在Hadoop的MapReduce过程中,Mapper读取处理完成数据后,会把数据发送到Partitioner,由Partitioner来决定每条记录应该送往哪个reducer节点,默认使用的是HashPartitioner,其核心代码如下:/** Use {@link Object#hashCode()} to partition. */
p...
分类:
其他好文 时间:
2014-07-17 15:06:56
阅读次数:
315