Map<String,Object> cacheIds=new HashMap<String,Object>();
Map<String,int> cacheIds=new HashMap<String,int>();
Object和int对逻辑来说无意义,哪个占用的资源最少,或者没有区别?

解决方案 »

  1.   

    首先Map<String,int>不允许这样写,只能Map<String,Integer>这跟你声明为Map<String,Object>,往里放Integer没有一点儿区别HashMap本身利用hash来提高速度,本质上就是一种空间换时间的做法加载因子loadFactor越大,内存使用率也越高,但检索速度会下降
    相反,加载因子loadFactor越小,内存使用率越低,检索速度越高可以根据自己的需要权衡,使用HashMap(int initialCapacity, float loadFactor) 构造方法指定加载因子的大小
      

  2.   

    int 类型的值不能放在HashMap键值对中,HashMap存放的是Object类型的键值对,只能存放基本数据类型的包装类..