??xml version="1.0" encoding="utf-8" standalone="yes"?>国产日韩一区二区三免费高清,亚洲男男av,蜜臀久久99精品久久久无需会员http://www.aygfsteel.com/TimmyWang/王胖子的黑板?/description>zh-cnWed, 18 Jun 2025 01:43:11 GMTWed, 18 Jun 2025 01:43:11 GMT60Hashtable和HashMap引发的血?/title><link>http://www.aygfsteel.com/TimmyWang/archive/2011/02/27/345291.html</link><dc:creator>王胖?/dc:creator><author>王胖?/author><pubDate>Sun, 27 Feb 2011 11:47:00 GMT</pubDate><guid>http://www.aygfsteel.com/TimmyWang/archive/2011/02/27/345291.html</guid><wfw:comment>http://www.aygfsteel.com/TimmyWang/comments/345291.html</wfw:comment><comments>http://www.aygfsteel.com/TimmyWang/archive/2011/02/27/345291.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.aygfsteel.com/TimmyWang/comments/commentRss/345291.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/TimmyWang/services/trackbacks/345291.html</trackback:ping><description><![CDATA[<span style="widows: 2; text-transform: none; text-indent: 0px; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px" class="Apple-style-span"> <p style="margin: 0px" class="MsoNormal"><em>人物Q?/em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em>王小胖:性别Q男。程序员Q工作经?/em><em>1 year</em><em>。爱好:吃肉、电玩、马花。特技Q吃肉不用考虑胃的定w?/em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em>马小花:性别Q女。学生,工作l验</em><em>0 year</em><em>。爱好:蛋糕、臭、王胖。特技Q能够降服王胖……</em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em> </em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em>/**2011</em><em>q?/em><em>2</em><em>月,电媄《将爱情q行到底》火得不得了。周末,胖也陪着花ȝq部电媄。放映中Q小pq中的靖哥哥和杜拉拉感动的一沓糊涂,而小胖则心里暗自后悔没有C袋大爆米花来打发q无聊的旉。媄片结束,花已经是E涕一把泪一把,胖也只有装模作样地抽动了几下E子,一心只想着一会儿是吃麦当劌是必胜客?/em><em>*/</em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em>回到家中Q小胖和花各自玩着电脑?/em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em>花Q胖子,你知?/em><em>Hashtable</em><em>?/em><em>HashMap</em><em>的区别吗Q?/em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em>胖Q略知?/em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em>花Q?#8230;…装什么!Q给我讲ԌQ!</em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em>胖Q好?#8230;…</em></p> <p style="margin: 0px" class="MsoNormal"><strong>W一个区别就先来说说l承关系吧?/strong></p> <p style="margin: 0px" class="MsoNormal"> 如果你在baidu里google一下(技术类文章的搜索还是推荐googleQ,会发现网上的大致说法?#8220;׃Java发展的历史原因。Hashtable是基于陈旧的DictionarycȝQHashMap是Java 1.2引进的Map接口的一个实现?#8221;相同。这U说法没有错Q但是胖子觉得不够准,特别是对于我们这U大众菜鸟来_如果不去q的话Q可能就会造成一些理解上的差异。简单的认ؓ<span style="white-space: pre" mce_style="white-space: pre;">Hashtable</span>没有l承Map接口。胖子之前就犯过q样的错误(胖子承认自己W,是真W?#8230;…Q??/p> <p style="margin: 0px" class="MsoNormal">       <em>花Q那你怎么知道它们两个各自的承关pdQ胖子?/em></p> <p style="margin: 0px" class="MsoNormal">我们可以参考一下最新的JDK1.6的源码,看看q两个类的定义:</p> <p style="margin: 0px" class="MsoNormal"><br /> </p> <pre style="border-bottom: rgb(204,204,204) 1px solid; border-left: rgb(204,204,204) 1px solid; padding-bottom: 3px; background-color: rgb(250,250,250); margin: 0px 5px 5px 15px; padding-left: 3px; padding-right: 3px; font-family: Verdana, Arial, Helvetica, sans-serif; color: rgb(0,0,0); font-size: 12px; border-top: rgb(204,204,204) 1px solid; border-right: rgb(204,204,204) 1px solid; padding-top: 3px; background-origin: initial; background-clip: initial" class="java" name="code">public class Hashtable<K,V> extends Dictionary<K,V> implements Map<K,V>, Cloneable, java.io.Serializable {…} public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable {…}</pre> <p style="margin: 0px"><br /> </p> <p style="margin: 0px"><br /> </p> <p style="margin: 0px" class="MsoNormal">可以看到hashtable也是l承了Map接口。它们的不同是HashtableQsince JDK1.0Q就l承了Dictionaryq个抽象c,而HashMapQsince JDK1.2Q承的则是AbstractMapq个抽象cR因为在Hashtable中看到承Map后所实现的方法是JDK1.2版本时加上去的,所以胖子猜惛_能是在JDK 1.2开发时Sun工程师出于统一的考虑使得Hashtable也承了Map接口?/p> <p style="margin: 0px" class="MsoNormal">       <em>花Q哦Q原?/em><em>JDK</em><em>源码q能看出来这个?/em></p> <p style="margin: 0px" class="MsoNormal"><em>       </em><em>胖Q?#8230;…后面q能看出更多东西的?/em></p> <p style="margin: 0px" class="MsoNormal"><em>       </em><em>花Q好期待啊?/em></p> <p style="margin: 0px" class="MsoNormal"><br /> </p> <p style="margin: 0px" class="MsoNormal"><strong>W二个区别我们从同步和ƈ发性上来说说它们两个的不同?/strong></p> <p style="margin: 0px" class="MsoNormal"><br /> </p> <p style="margin: 0px" class="MsoNormal">可以通过q两个类得源码来分析QHashtable中的主要Ҏ都做了同步处理,而HashMap则没有。可以说Hashtable在默认情冉|持同步,而HashMap在默认情况下是不支持的。我们在多线Eƈ发的环境下,可以直接使用HashtableQ但是要使用HashMap的话p自己增加同步处理了。对HashMap的同步处理可以用CollectionscL供的synchronizedMap静态方法;或者直接用JDK5.0之后提供的java.util.concurrent包里的ConcurrentHashMapcR?/p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em>胖Q?/em><em>synchronizedMap</em><em>静态方法和</em><em>ConcurrentHashMap</em><em>cL会以后再l你详细讲一下的。肥婆?/em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em>花Q你保证啊。钥匙忘了你知道后果的?/em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><em>胖Q好?#8230;…</em></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><br /> </p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><strong>W三个区别就是它们对?/strong><strong>null</strong><strong>值的处理方式了?/strong></p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21pt;"><br /> </p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;">我们依然能够从源代码中得知,Hashtable中,key和value都不允许出现null倹{?/p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><br /> </p> <pre style="border-bottom: rgb(204,204,204) 1px solid; border-left: rgb(204,204,204) 1px solid; padding-bottom: 3px; background-color: rgb(250,250,250); margin: 0px 5px 5px 15px; padding-left: 3px; padding-right: 3px; font-family: Verdana, Arial, Helvetica, sans-serif; color: rgb(0,0,0); font-size: 12px; border-top: rgb(204,204,204) 1px solid; border-right: rgb(204,204,204) 1px solid; padding-top: 3px; background-origin: initial; background-clip: initial" class="java" name="code">public synchronized V put(K key, V value) { // Make sure the value is not null if (value == null) { throw new NullPointerException(); } // Makes sure the key is not already in the hashtable. Entry tab[] = table; int hash = key.hashCode(); int index = (hash & 0x7FFFFFFF) % tab.length; //… }</pre>    <p style="margin: 0px" class="MsoNormal">在我们用上面的ҎӞ如参数value为nullQ可以从代码<span style="font-size: small" mce_style="font-size: small;">中直接看出程序会抛出NullPointerExceptionQ而在key为nullӞ则会?#8220;int hash = key.hashCode();“q段计算Hash值的q程中抛出NullPointerException?/span>而在在HashMap中,允许null作ؓkey存在Qƈ且和其他key的特性一Pq样的null值key只能有一个;另外HashMap允许多个value为null。这样大家就要注意了Q?nbsp;HashMap中就不能用get(key)Ҏ来判断HashMap中是否存在某个keyQ因为value为null和不存在该key的Entry都会q回null|而应该用containsKey()Ҏ来判断了?/p> <p style="text-indent: 21pt; margin: 0px" class="MsoNormal" mce_style="text-indent: 21.0pt;"><br /> </p> <pre style="border-bottom: rgb(204,204,204) 1px solid; border-left: rgb(204,204,204) 1px solid; padding-bottom: 3px; background-color: rgb(250,250,250); margin: 0px 5px 5px 15px; padding-left: 3px; padding-right: 3px; font-family: Verdana, Arial, Helvetica, sans-serif; color: rgb(0,0,0); font-size: 12px; border-top: rgb(204,204,204) 1px solid; border-right: rgb(204,204,204) 1px solid; padding-top: 3px; background-origin: initial; background-clip: initial" class="java" name="code">import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; public class TestCase { public static void main(String[] args) { Map<Integer,String> hashMap = new HashMap<Integer,String>(); hashMap.put(0, null); hashMap.put(1, "one"); hashMap.put(2, "two"); hashMap.put(null, "null"); for(Entry<Integer, String> e : hashMap.entrySet()) { System.out.println("Key: " + e.getKey() + " -- Value: " + e.getValue()); } System.out.println(hashMap.get(0)); System.out.println(hashMap.get(4)); System.out.println("Contains key 0 ? :" + hashMap.containsKey(0)); System.out.println("Contains key 4 ? :" + hashMap.containsKey(4)); System.out.println("Contains value null ? :" + hashMap.containsValue(null)); } }</pre>   <p style="margin: 0px"><span style="font-family: 'Courier New'; font-size: small" mce_style="font-family: 'Courier New'; font-size: small;"><span style="font-size: 13px" mce_style="font-size: 13px;"><span style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small" mce_style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small;"><span style="font-size: 12px" mce_style="font-size: 12px;">l果Q?/span></span></span></span></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <pre style="border-bottom: rgb(204,204,204) 1px solid; border-left: rgb(204,204,204) 1px solid; padding-bottom: 3px; background-color: rgb(250,250,250); margin: 0px 5px 5px 15px; padding-left: 3px; padding-right: 3px; font-family: Verdana, Arial, Helvetica, sans-serif; color: rgb(0,0,0); font-size: 12px; border-top: rgb(204,204,204) 1px solid; border-right: rgb(204,204,204) 1px solid; padding-top: 3px; background-origin: initial; background-clip: initial" class="java" name="code">Key: null -- Value: null Key: 0 -- Value: null Key: 1 -- Value: one Key: 2 -- Value: two null null Contains key 0 ? :true Contains key 4 ? :false Contains value null ? :true</pre> <p style="margin: 0px"><br /> </p> <p style="margin: 0px" class="MsoNormal">HashMap对于null值key的处理网上有?#8220;null 用new Object()来代替,其Entry.hashCode=0,而且在取出的时候还会还回null的?#8221;胖子我在d源码的过E中看到了null值的hash值确实是0 Q内部实现的数组中的index也是Q,但是能力有限没有看到转ؓnew Object()的过E?/p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>花Q?原来</em><em>hashMap</em><em>?/em><em>containsKey</em><em>q有q么个陷阱,以后肥婆要小心了?/em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><strong>W四个不同就是它们两?/strong><strong>Hash</strong><strong>值的获取方式了?/strong></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;">q是通过源代码源代码QHashtable是直接用key对象的hash倹{?/p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <pre style="border-bottom: rgb(204,204,204) 1px solid; border-left: rgb(204,204,204) 1px solid; padding-bottom: 3px; background-color: rgb(250,250,250); margin: 0px 5px 5px 15px; padding-left: 3px; padding-right: 3px; font-family: Verdana, Arial, Helvetica, sans-serif; color: rgb(0,0,0); font-size: 12px; border-top: rgb(204,204,204) 1px solid; border-right: rgb(204,204,204) 1px solid; padding-top: 3px; background-origin: initial; background-clip: initial" class="java" name="code">public synchronized V put(K key, V value) { // Make sure the value is not null if (value == null) { throw new NullPointerException(); } // Makes sure the key is not already in the hashtable. Entry tab[] = table; int hash = key.hashCode();//hashcode int index = (hash & 0x7FFFFFFF) % tab.length; //… }</pre>   <p style="margin: 0px"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;">而HashMap则是利用key对象的hash值重新计一个新的hash倹{?/p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <pre style="border-bottom: rgb(204,204,204) 1px solid; border-left: rgb(204,204,204) 1px solid; padding-bottom: 3px; background-color: rgb(250,250,250); margin: 0px 5px 5px 15px; padding-left: 3px; padding-right: 3px; font-family: Verdana, Arial, Helvetica, sans-serif; color: rgb(0,0,0); font-size: 12px; border-top: rgb(204,204,204) 1px solid; border-right: rgb(204,204,204) 1px solid; padding-top: 3px; background-origin: initial; background-clip: initial" class="java" name="code">public V put(K key, V value) { if (key == null) return putForNullKey(value); int hash = hash(key.hashCode());//hashcode int i = indexFor(hash, table.length); //… } static int hash(int h) { h ^= (h >>> 20) ^ (h >>> 12); return h ^ (h >>> 7) ^ (h >>> 4); }</pre> <p style="margin: 0px"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>花Q胖子,都用?/em><em>hash</em><em>法Q你l我讲讲</em><em>Hash</em><em>法吧?/em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>胖Q嗯……以后的,今天我比较忙Q其实是不会Q?/em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>花Q你是不是不会啊Q嘿嘿(坏笑Q?/em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>胖Q什么不?#8230;…谈下一话题……</em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em> </em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><strong>W五个不同就?/strong><strong>Hashtable</strong><strong>?/strong><strong>HashMap</strong><strong>它们两个内部实现方式的数l的初始大小和扩容的方式?/strong></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <p style="margin: 0px" class="MsoNormal">HashMap中内部数l的初始定w?6Q?加蝲因子?.75Q而且数组定w增容后也要是2指数ơ幂Q?/p> <p style="margin: 0px" class="MsoNormal"><br /> </p> <p style="margin: 0px" class="MsoNormal"><br /> </p> <pre style="border-bottom: rgb(204,204,204) 1px solid; border-left: rgb(204,204,204) 1px solid; padding-bottom: 3px; background-color: rgb(250,250,250); margin: 0px 5px 5px 15px; padding-left: 3px; padding-right: 3px; font-family: Verdana, Arial, Helvetica, sans-serif; color: rgb(0,0,0); font-size: 12px; border-top: rgb(204,204,204) 1px solid; border-right: rgb(204,204,204) 1px solid; padding-top: 3px; background-origin: initial; background-clip: initial" class="java" name="code">/** * The default initial capacity - MUST be a power of two. */ static final int DEFAULT_INITIAL_CAPACITY = 16; /** * The load factor used when none specified in constructor. */ static final float DEFAULT_LOAD_FACTOR = 0.75f;</pre>   <p style="margin: 0px"><br /> </p> <p style="margin: 0px" class="MsoNormal">HashTable中的内部数组的初始容量是11Q加载因子也?.75数组的增Ҏ式ؓQoldCapacity * 2 + 1Q?</p> <p style="margin: 0px" class="MsoNormal"><br /> </p> <p style="margin: 0px" class="MsoNormal"><br /> </p> <pre style="border-bottom: rgb(204,204,204) 1px solid; border-left: rgb(204,204,204) 1px solid; padding-bottom: 3px; background-color: rgb(250,250,250); margin: 0px 5px 5px 15px; padding-left: 3px; padding-right: 3px; font-family: Verdana, Arial, Helvetica, sans-serif; color: rgb(0,0,0); font-size: 12px; border-top: rgb(204,204,204) 1px solid; border-right: rgb(204,204,204) 1px solid; padding-top: 3px; background-origin: initial; background-clip: initial" class="java" name="code">public Hashtable() { this(11, 0.75f); } protected void rehash() { int oldCapacity = table.length; Entry[] oldMap = table; int newCapacity = oldCapacity * 2 + 1; //… }</pre>   <p style="margin: 0px"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><strong>W六个不同我们从它们两个遍历方式的内部实C来说?/strong></p> <p style="margin: 0px" class="MsoNormal">Hashtable HashMap都用了 Iterator。而由于历史原因,Hashtableq用了Enumeration的方??/p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>花Q?/em><em>Iterator</em><em>?/em><em>Enumeration</em><em>的区别是什么啊Q给我讲讌Ӏ?/em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>胖Q我不是说我没有旉嘛,下回的?/em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>花Q我都记下来Q省得你l我淯厅R(拿vW开始记账中Q?/em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>胖Q?#8230;…Q紧张)</em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><strong>W七个不同时它们的拷贝构造函数的不同?/strong></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;">依然是通过查看源码Q可以发现它们两个对于拷贝函数初始容量的不同倹{?/p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;">HashMap的实现是Q?/p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <pre style="border-bottom: rgb(204,204,204) 1px solid; border-left: rgb(204,204,204) 1px solid; padding-bottom: 3px; background-color: rgb(250,250,250); margin: 0px 5px 5px 15px; padding-left: 3px; padding-right: 3px; font-family: Verdana, Arial, Helvetica, sans-serif; color: rgb(0,0,0); font-size: 12px; border-top: rgb(204,204,204) 1px solid; border-right: rgb(204,204,204) 1px solid; padding-top: 3px; background-origin: initial; background-clip: initial" class="java" name="code">public HashMap(Map<? extends K, ? extends V> m) { this(Math.max((int) (m.size() / DEFAULT_LOAD_FACTOR) + 1, DEFAULT_INITIAL_CAPACITY), DEFAULT_LOAD_FACTOR); putAllForCreate(m); }</pre>   <p style="margin: 0px"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;">而Hashtable的实现是Q?/p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <pre style="border-bottom: rgb(204,204,204) 1px solid; border-left: rgb(204,204,204) 1px solid; padding-bottom: 3px; background-color: rgb(250,250,250); margin: 0px 5px 5px 15px; padding-left: 3px; padding-right: 3px; font-family: Verdana, Arial, Helvetica, sans-serif; color: rgb(0,0,0); font-size: 12px; border-top: rgb(204,204,204) 1px solid; border-right: rgb(204,204,204) 1px solid; padding-top: 3px; background-origin: initial; background-clip: initial" class="java" name="code">public Hashtable(Map<? extends K, ? extends V> t) { this(Math.max(2*t.size(), 11), 0.75f); putAll(t); }</pre>   <p style="margin: 0px"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>胖Q今天讲的已l很多了。我有点饿了Q肥婆?/em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>花Q看你今天的表现q么好。走Q带你去吃烤肉去?/em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><em>胖Q哈哈,肥婆万岁?/em></p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;">PS:下面打算写的一些东?/p> <p style="text-align: left; margin: 0px" class="MsoNormal" align="left" mce_style="text-align: left;"><br /> </p> <p style="margin: 0px" class="MsoNormal"><br /> </p> <ol> <li>TreeMap的排序及其他相关集合c?/li> <li>synchronizedMap的用方?/li> <li>concurrentMap实现l节和?/li> <li>Properties使用说明?nbsp;扩展</li> <li>Iterator和Enumeration的区?/li> <li>Hash法 的实?nbsp;</li> </ol> </span></span> <img src ="http://www.aygfsteel.com/TimmyWang/aggbug/345291.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/TimmyWang/" target="_blank">王胖?/a> 2011-02-27 19:47 <a href="http://www.aygfsteel.com/TimmyWang/archive/2011/02/27/345291.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̫</a>| <a href="http://" target="_blank">ʡ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̨</a>| <a href="http://" target="_blank">̨</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ƽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ԭ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ǭ</a>| <a href="http://" target="_blank">˳</a>| <a href="http://" target="_blank">߰</a>| <a href="http://" target="_blank">ȷ</a>| <a href="http://" target="_blank">˰</a>| <a href="http://" target="_blank">Ǩ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͬ</a>| <a href="http://" target="_blank">ˮ</a>| <a href="http://" target="_blank">߰</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ʡ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">®</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ˮ</a>| <a href="http://" target="_blank">Դ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>