2010年5月16日星期日

袁腾飞不见了

引子一篇报道:
袁腾飞发表了诸如"蒋介石是一党独裁,毛泽东其实也一样"、"三年自然灾害(1959年至1961年)死了三千万,比二战全欧洲死的人还多"、
"中国历史教科书纯粹胡说八道"等言论。他认为中国文革10年(1966年至1976年)"在中华五千年文明史上,甚至在人类一万八千年文明史上都是最黑暗的10年,能跟它勉强媲美的是,斯大林的俄国和希特勒的德国";并指天安门广场的毛主席纪念堂"是中国的靖国神社","供奉的是一个沾满人民鲜血的刽子手"。

2010年5月11日星期二

QQREADER498995AAB35065BD

QQREADER498995AAB35065BD

Map初始化

map = new HashMap();
我们经常使用,然后put对象。
这样创建map对象后,map会自动初始化16的长度Entry数组存放对象,增长因子是0.75f。

有一种使用方法,就是我知道要放多少个(如20个)对象有人这么干:
map = new HashMap(20)
这样好吗?当我们存入15个对象后(20*0.75 = 15),map需要进行resize,容量扩展到40(20 * 2)。
所以正确的做法是:
map = new HashMap(20, 1.0f);
或map = HashMap(20 * 0.75);

这样保证map不会进行resize操作,此操作是map最大的损耗。

尤其对于使用map进行装载大量数据(如10W条),最好指定合理容量,减少不必要的resize。
对于只存放几个对象,不必指定任何参数。