遍历Map<K, Collection<V>>的正确方法
对于value为集合的map,一般直觉上我们可能会选用下面的方式遍历map中所有collection的所有对象:for(K key:map.keySet()){ for(V value:map.get(key)){ // do sth. } }实际上,这种方式在第二行上会因为对哈希表的查询浪费效率,正确的做法应该这样:for(List [more...]
对于value为集合的map,一般直觉上我们可能会选用下面的方式遍历map中所有collection的所有对象:for(K key:map.keySet()){ for(V value:map.get(key)){ // do sth. } }实际上,这种方式在第二行上会因为对哈希表的查询浪费效率,正确的做法应该这样:for(List [more...]
不得不承认,Sun在Java及其周边产品的本地化上下了很大的功夫,比如中文版的Javadoc,NB,GlassFish……但是,Sun不得不承认的是,这些本地化尤其是后两个做得太TM狗屎了。每次新装Sun为我们“精心准备”的130+ [more...]
这两天发现项目中有个模块有内存泄露,512 MB的堆内存大概在5个小时左右被耗尽。通过NB的profiler跟踪可以看到如下结果:java.util.concurrent.LinkedBlockingQueue.Node对象尽然占了一多半。在实时profile中发现即使限定了list的capacity并且在不断调用take方法(相当于remove)时,Node的alive [more...]
最近项目里的RMI在Linux下运行老出问题,而且问题出得还很不稳定。那个程序启动时会分别在4个端口上绑定4个相同的对象,结果就是有时绑定成功3个,有时候才1个……查看log,抛出下面异常 java.rmi.NoSuchObjectException: no such object in [more...]
Smultron,这个哥们儿的博客里有比较详细的介绍,开源项目,感觉比TextMate好用,至少很完美地支持中文,而且界面也是中文。唯一不足的是对大文件支持很差,打开一个15+MB的文件很吃力。但话说回来到现在为止都没找到一个mac下的像UltraEdit那样能在120+MB文本文件里做全文查找替换界面都不怎么假死的软件,大家有推荐的么? [more...]
昨天晚上Safari 4 beta发布,150+新功能~~(http://www.apple.com/safari/features.html)100%通过acid 3测试:http://acid3.acidtests.org/。FF:69%,Chrome:100%,IE 8:算了,意料之中,14% 支持HTML 5的离线模式 使用Nitro [more...]
破纪录,一晚上抽一包点八 把闹钟调到8点半,早点去公司,让工作冲淡一切
去年北京的冬天唯一的印象就是干燥,老天爷一直彬着,一点儿雨水都不见。过完年,终于下雪了~~