2016年5月31日
摘要: 关于C++标准模板库(Standard Template Library, STL)的书籍和资料有很多,关于Java集合框架(Java Collections Framework, JCF)的资料却很少,甚至很难找到一本专门介绍它的书籍,这给Java学习者们带来不小的麻烦。我深深的不解其中的原因。虽然JCF设计参考了STL,但其定位不是Java版的STL,而是要实现一个精简紧凑的容器框架,对STL的介绍自然不能替代对JCF的介绍。
阅读全文
posted @
2016-05-31 15:28 CarpenterLee 阅读(1930) |
评论 (0) |
编辑 收藏
摘要: Java WeakHashMap 到底Weak在哪里,它真的很弱吗?WeakHashMap 的适用场景是什么,使用时需要注意些什么?弱引用和强引用对Java GC有什么不同影响?本文将给出清晰而简洁的介绍。
阅读全文
posted @
2016-05-31 07:27 CarpenterLee 阅读(1108) |
评论 (0) |
编辑 收藏
2016年5月25日
摘要: 上一篇文章史上最清晰的红黑树讲解(上)对Java TreeMap的插入以及插入之后的调整过程给出了详述。本文接着以Java TreeMap为例,从源码层面讲解红黑树的删除,以及删除之后的调整过程。如果还没有看过上一篇文章,请在阅读本文之前大致浏览一下前文,以方便理解。
阅读全文
posted @
2016-05-25 16:48 CarpenterLee 阅读(790) |
评论 (0) |
编辑 收藏
2016年5月12日
摘要: Java中PriorityQueue通过二叉小顶堆实现,可以用一棵完全二叉树表示。本文从Queue接口函数出发,结合生动的图解,深入浅出地分析PriorityQueue每个操作的具体过程和开销,将有助于您对该容器建立清晰明了的认识。
阅读全文
posted @
2016-05-12 21:22 CarpenterLee 阅读(1435) |
评论 (2) |
编辑 收藏
2016年5月11日
摘要: 每个博客园的园友或许都会有这种经历:自己辛辛苦苦,认认真真的写了篇博客,然后满心欢喜的发到了博客园首页,当你以为大功告成坐等点击量暴表的时候,却发现自己的博文根本无人问津。那将是何等的痛苦:(
博客不火,不一定是博文内容不够严谨深入,也不一定是你能力不足,而可能仅仅是因为你选择了错误的发表时机。
阅读全文
posted @
2016-05-11 09:02 CarpenterLee 阅读(1391) |
评论 (8) |
编辑 收藏
2016年5月7日
摘要: Java里有一个叫做Stack的类,却没有叫做Queue的类(它是个接口名字)。当需要使用栈时,Java已不推荐使用Stack,而是推荐使用更高效的ArrayDeque;既然Queue只是一个接口,当需要使用队列时也就首选ArrayDeque了(次选是LinkedList)。
阅读全文
posted @
2016-05-07 18:30 CarpenterLee 阅读(1353) |
评论 (2) |
编辑 收藏
2016年5月4日
摘要: LinkedList同时实现了List接口和Deque接口,也就是说它既可以看作一个顺序容器,又可以看作一个队列(Queue),同时又可以看作一个栈(Stack)。这样看来,LinkedList简直就是个全能冠军。当你需要使用栈或者队列时,可以考虑使用LinkedList,一方面是因为Java官方已经声明不建议使用Stack类,更遗憾的是,Java里根本没有一个叫做Queue的类(它是个接口名字)。关于栈或队列,现在的首选是ArrayDeque,它有着比LinkedList(当作栈或队列使用时)有着更好的性能。
阅读全文
posted @
2016-05-04 08:35 CarpenterLee 阅读(1828) |
评论 (3) |
编辑 收藏