- public Class getType() {
- return type;
- }
- }
如上,CacheKey作为map的key要求具有唯一性,并且有一定地分散性,疑惑的地方是如何实现这样一个hashCode算法。考虑过通过CacheKey.key和CacheKey.type这两个属性的hashCode来算,比如key.hashCode()+type.hashCode()。属性CacheKey.type的hashCode算法大概是基于内存地址,但CacheKey.key的算法就不一定了,比如为Integer,就是取的int值,如果是String,也是根据字符串值来取得的,这样就可能出现重复值。请教一个好的办法