JavaÖжÔHashMapµÄÉî¶È·ÖÎö
ÔÚJavaµÄÊÀ½çÀÎÞÂÛÀ໹ÊǸ÷ÖÖÊý¾Ý£¬Æä½á¹¹µÄ´¦ÀíÊÇÕû¸ö³ÌÐòµÄÂß¼ÒÔ¼°ÐÔÄܵĹؼü¡£ÓÉÓÚ±¾È˽Ӵ¥ÁËÒ»¸öÓйØÐÔÄÜÓëÂ߼ͬʱ²¢´æµÄÎÊÌ⣬ÓÚÊǾͿªÊ¼Ñо¿Õâ·½ÃæµÄÎÊÌâ¡£ÕÒ±éÁË´ó´óССµÄÂÛ̳£¬Ò²°Ñ¡¶Java ÐéÄâ»ú¹æ·¶¡·£¬¡¶apress,.java.collections.(2001),.bm.ocr.6.0.shareconnector¡·£¬ºÍ¡¶Thinking in Java¡··ÁËÒ²ÕÒ²»µ½ºÜºÃµÄ´ð°¸£¬ÓÚÊÇÒ»ÆøÖ®Ï°ÑJDKµÄ src ½âѹ³öÀ´Ñо¿£¬À©È»¿ªÀÊ£¬Ëìд´ËÎÄ£¬¸ú´ó¼Ò·ÖÏí¸ÐÊܺÍ˳±ãÑéÖ¤ÎÒÀí½â»¹ÓÐûÓЩ¶´¡£ ÕâÀï¾ÍÄÃHashMapÀ´Ñо¿°É¡£
¡¡¡¡HashMap¿ÉνJDKµÄÒ»´óʵÓù¤¾ß£¬°Ñ¸÷¸öObjectÓ³ÉäÆðÀ´£¬ÊµÏÖÁË“¼ü££Öµ”¶ÔÓ¦µÄ¿ìËÙ´æÈ¡¡£µ«Êµ¼ÊÀïÃæ×öÁËÐ©Ê²Ã´ÄØ£¿
¡¡¡¡ÔÚÕâ֮ǰ£¬ÏȽéÉÜһϸºÔØÒò×ÓºÍÈÝÁ¿µÄÊôÐÔ¡£´ó¼Ò¶¼ÖªµÀÆäʵһ¸ö HashMap µÄʵ¼ÊÈÝÁ¿¾Í Òò×Ó*ÈÝÁ¿£¬ÆäĬÈÏÖµÊÇ 16×0.75£½12£» Õâ¸öºÜÖØÒª£¬¶ÔЧÂʺÜÒ»¶¨Ó°Ï죡µ±´æÈëHashMapµÄ¶ÔÏ󳬹ýÕâ¸öÈÝÁ¿Ê±£¬HashMap ¾Í»áÖØÐ¹¹Ôì´æÈ¡±í¡£Õâ¾ÍÊÇÒ»¸ö´óÎÊÌ⣬ÎÒºóÃæÂýÂý½éÉÜ£¬·´Õý£¬Èç¹ûÄãÒѾ֪µÀÄã´ó¸ÅÒª´æ·Å¶àÉÙ¸ö¶ÔÏó£¬×îºÃÉèΪ¸Ãʵ¼ÊÈÝÁ¿µÄÄܽÓÊܵÄÊý×Ö¡£
¡¡¡¡Á½¸ö¹Ø¼üµÄ·½·¨£¬putºÍget£º
¡¡¡¡ÏÈÓÐÕâÑùÒ»¸ö¸ÅÄHashMapÊÇÉùÃ÷ÁË Map£¬Cloneable, Serializable ½Ó¿Ú£¬ºÍ¼Ì³ÐÁË AbstractMap À࣬ÀïÃæµÄ Iterator ÆäʵÖ÷Òª¶¼ÊÇÆäÄÚ²¿ÀàHashIterator ºÍÆäËû¼¸¸ö iterator ÀàʵÏÖ£¬µ±È»»¹ÓÐÒ»¸öºÜÖØÒªµÄ¼Ì³ÐÁËMap.Entry µÄ Entry ÄÚ²¿À࣬ÓÉÓÚ´ó¼Ò¶¼ÓÐÔ´´úÂ룬´ó¼ÒÓÐÐËȤ¿ÉÒÔ¿´¿´Õⲿ·Ö£¬ÎÒÖ÷ÒªÏë˵Ã÷µÄÊÇ Entry ÄÚ²¿Àà¡£Ëü°üº¬ÁËhash£¬value£¬key ºÍnext ÕâËĸöÊôÐÔ£¬ºÜÖØÒª¡£putµÄÔ´ÂëÈçÏÂ
¡¡¡¡public Object put(Object key, Object value) {
¡¡¡¡Object k = maskNull(key);
¡¡¡¡Õâ¸ö¾ÍÊÇÅжϼüÖµÊÇ·ñΪ¿Õ£¬²¢²»ºÜÉî°Â£¬ÆäʵÈç¹ûΪ¿Õ£¬Ëü»á·µ»ØÒ»¸östatic Object ×÷Ϊ¼üÖµ£¬Õâ¾ÍÊÇΪʲôHashMapÔÊÐí¿Õ¼üÖµµÄÔÒò¡£
¡¡¡¡int hash = hash(k);
¡¡¡¡int i = indexFor(hash, table.length);
¡¡¡¡ÕâÁ¬ÐøµÄÁ½²½¾ÍÊÇ HashMap ×îÅ£µÄµØ·½£¡Ñо¿ÍêÎÒ¶¼º¹ÑÕÁË£¬ÆäÖÐ hash ¾ÍÊÇͨ¹ý key Õâ¸öObjectµÄ hashcode ½øÐÐ hash£¬È»ºóͨ¹ý indexFor »ñµÃÔÚObject tableµÄË÷ÒýÖµ¡£
¡¡¡¡table£¿£¿£¿²»Òª¾ªÑÈ£¬ÆäʵHashMapÒ²Éñ²»µ½ÄÄÀïÈ¥£¬Ëü¾ÍÊÇÓà table À´·ÅµÄ¡£×îÅ£µÄ¾ÍÊÇÓà hash ÄÜÕýÈ·µÄ·µ»ØË÷Òý¡£ÆäÖеÄhashËã·¨£¬ÎÒ¸úJDKµÄ×÷Õß Doug ÁªÏµ¹ý£¬Ëû½¨ÒéÎÒ¿´¿´¡¶The art of programing vol3¡·¿ÉºÞµÄÊÇ£¬ÎÒ֮ǰ¾ÍÒ»Ö±ÔÚÕÒ£¬ÎÒ¶¼ÕÒ²»µ½£¬Ë
Ïà¹ØÎĵµ£º
ͬÑùµÄ³ÌÐò£¬ÔÚ±ðÈ˵ĵçÄÔÉ϶¼¿ÉÒÔÓã¬ÔÚÎҵĵçÄÔÉÏÈ´ÎÞÂÛÈçºÎ¶¼Í¨²»¹ý£¬ÓôÃÆ°¡¡£
×òÌìÓöµ½Ò»¸öÎÊÌâ¸ãÁËÒ»Ì춼ûÓнâ¾ö£¬
Õâ¸ö³ÌÐòÔÚ±ðÈ˵ĵçÄÔÉÏÓö¼¿ÉÒÔͨ¹ý£¬Ö»ÓÐÔÚÎҵĵçÄÔÉÏÎÞ·¨Í¨¹ý
£¬ÎÒÒ»¿ªÊ¼×°µÄÊÇJDK6.0£¬ºóÀ´Ð¶ÔØÁË×°³ÉÁËJDK5.0£¨ÎªÁ˺ÍËùѧ½Ì³Ì±£³ÖÒ»Ö£¬
ÒÔ¼°ÎÒËÞÉáͨ¹ý²âÊԵĻúÆ÷Ò²ÊÇ×°µÄJDK5.0£©£¬
µ«ÊÇ ......
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>ʵÀý1</TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME=" ......
ûÓбØÒªÓÃÒ»¶ÑÈÆ¿ÚµÄÐÎÈÝ´ÊÀ´ÃèÊöʲô½Ð¶à̬£¬Ö»¾Ù³ö¼¸¸ö¹Ø¼üµã¡£
É裺gunΪ¸¸À࣬shootgunºÍpistolΪgunµÄ×ÓÀà¡£
Java:
class gun {
void shoot() {
  ......
ºÜ¶àÈË˵C#ÊÇ΢ÈíÓÃÀ´ºÍJava¿¹ºâµÄÎäÆ÷£¬ÒòΪ¶þÕßÔںܴó³Ì¶ÈÉÏÓÐמªÈ˵ÄÏàËÆ£¬¾¡¹ÜÈç´Ë£¬Á½Õß²»Í¬µÄµØ·½Ò²ºÜ¶à£¬Ëùν“ÓÚϸ΢´¦¼û²îÒ씡£ÄÇôÁ½ÕßµÄÏàËÆºÍÇø±ð¶¼ÔÚʲôµØ·½ÄØ£¿ÎÒÃÇ´Ó½ñÌ쿪ʼ£¬»á´Ó¸÷¸ö½Ç¶ÈÀ´¶Ô±ÈC#ºÍJavaµÄÌØµã£¬Ï£ÍûÄܶÔÕýÔÚѧϰ¡¢Ê¹ÓÃC#µÄÅóÓÑÓÐËù°ïÖú¡£
& Y0 f! I! a4 a1 K
% B# G8 ......
JavaµÄÏ̵߳÷¶È²Ù×÷ÔÚÔËÐÐʱÊÇÓëÆ½Ì¨Î޹صġ£Ò»¸ö¶àÈÎÎñϵͳÐèÒªÔÚÈÎÎñÖ®¼äʵÏÖQoS(Quality of Service)¹ÜÀíʱ£¬Èç¹ûCPU×ÊÔ´µÄ·ÖÅä»ùÓÚJavaÏ̵߳ÄÓÅÏȼ¶£¬ÄÇôËüÔÚ²»Í¬Æ½Ì¨ÉÏÔËÐÐʱµÄЧ¹ûÊǺÜÄÑÔ¤²âµÄ¡£±¾ÎÄÀûÓÃе÷ʽ¶àÈÎÎñÄ£ÐÍ£¬Ìá³öÒ»¸öÓëÆ½Ì¨Î޹ء¢²¢ÇÒÄÜÔÚÈÎÎñ¼ä¶¯Ì¬·ÖÅäCPU×ÊÔ´µÄ·½°¸¡£
ÏÖÔÚ£¬ÓÉÓÚ¼ÆËã»úϵͳÒѾ´ÓÈ ......