Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

±¾µØÎı¾Ë÷Òý¼°javaµÄHashMapʵÏÖ

Õâ¸öѧÆÚµÄÐÅÏ¢¼ìË÷¿ÎÒª×öÒ»¸ö´óµÄ×÷Òµ£¬Æäʵ¾ÍÊÇÏ൱ÓÚÒ»¸öËÑË÷ÒýÇæ£¬µ«ÊÇÊÇ»ùÓÚ±¾µØÎı¾ÎļþµÄ¼ìË÷£¬²»ÐèÒª°ÇÍøÒ³£¬Ò²²»ÄÜʹÓÃLucence»òLemurµÈÇ¿´óµÄµÚÈý·½¿ªÔ´Èí¼þ£¬ÒªÈ«²¿×Ô¼ºÍê³É¡£
Ҫ˵Ë÷Òýµ¹ÊÇÊ®·Ö¼òµ¥£¬¾ÍÊǵ¹ÅŶøÒÑ£¬²¢Ã»ÓÐʲô¸´ÔÓ£¬¶øÇÒµÚÒ»°æµÄ×÷ÒµÒªÇóÖ»ÒªÒÔ×ÖΪË÷Òý¼´¿É£¬¶øÇÒ²»ÐèÒª¶Ô½á¹û½øÐÐÅÅÐòºÍ¸ßÁÁÏÔʾ£¬ÉõÖÁ²»ÐèÒª¼Ç¼¸Ã×ÖÔÚÎĵµÖгöÏֵĴÎÊýºÍλÖá£ËùÒÔÔÚÍê³ÉµÄʱºòÒ²¾ÍÊÇʹÓÃÁËÒ»¸ö½ÏΪ¼òµ¥µÄ´æ´¢Êý¾Ý½á¹¹£¬¼´HashMap<string, HashSet<int>>ÕâÑùÒ»¸ö½á¹¹£¬µÚÒ»¸ö²ÎÊý´æ´¢µÄÊÇ×Ö£¬ºóÃæµÄHashSetÖд洢µÄÊǸÃ×Ö³öÏÖµÄÎĵµºÅ£¬ÓÉÓÚ×ÖºÍÎĵµºÅ¶¼²»ÐèÒªÖØ¸´¼Ç¼£¬ËùÒÔ²ÉÓÃÁ˹þÏ£½á¹¹¡£
²»¾ÃÓÖ¿ªÊ¼×öÊý¾Ý¿âµÄ×÷Òµ£¬ÄÚÈÝÊÇ»ùÓÚÊý¾Ý¿âµÄÐÅÏ¢¼ìË÷£¬Õâ´ÎµÄÊý¾ÝÁ¿Ïà¶ÔÒª´óºÜ¶à£¬´ó¸ÅÓÐ300¶àMµÄÊý¾Ý£¬¶øÇÒ±ØÐëÓÃC++À´Íê³É£¬¿ªÊ¼ÊÇÓÃSTLµÄmapÀ´×ö£¬µ«ÊÇmapÊÇûÓÐʵÏÖ¹þÏ£µÄ£¬²åÈëʱҪÅжÏÖØ¸´£¬ËùÒÔËÙ¶È»áÖ¸Êý¼¶±äÂý£¬380ÍòÌõÊý¾Ý´¦Àíµ½50Íòʱ¾ÍÒѾ­Âýµ½²»ÐÐÁË£¬¶øÇÒ³ÔÄÚ´æÊ®·ÖÑÏÖØ£¬ËùÒÔ¾ÍÏ£Íû×Ô¼ºÊµÏÖÒ»¸öHashMap¡£
ËäÈ»ÍøÉÏÒ²ÓÐÏֳɵĴúÂ룬µ«ÊÇ»¹ÊÇÏë×Ô¼ºÐ´Ò»¸ö£¬Ïëµ½javaÖÐÓõ½ÁËJDK1.6µÄHashMap£¬¾ÍÏë×Å˳±ã¿´Ò»ÏÂJDKµÄÔ´Â룬ȻºóÕÕè»­»¢ÒÆÖ²µ½C++ÖУ¬´ó¸Å»¨ÁËÒ»Ìì×óÓÒµÄʱ¼äʵÏÖÁËÒ»¸ö½Ï¼òµ¥µÄ£¬Ã»ÓÐʵÏÖµü´úÆ÷µÄHashMap£¬Ë³±ã¼Ç¼һÏÂÔÚ¿´JDKÔ´ÂëʱµÄһЩÊÕ»ñ£¬±Ï¾¹Ð´µÃ»¹ÊÇÏ൱¾«²ÊµÄ£¬¿ÉÒÔÕâô˵°É¡£
Ê×ÏÈÊÇÉ¢ÁÐÂëµÄ¼ÆË㣬ÕâÊÇ×ö¹þÏ£×îÖØÒªµÄÒ»²¿·Ö£¬Ã»ÓÐÒ»¸öºÃµÄÉ¢Áк¯Êý£¬Ò»Çж¼ÊÇ¿Õ̸£¬ÏÂÃæÊÇJDK1.6ÖйþÏ£µÄ¼ÆË㣬һЩ²ÎÊýÎÒÖ±½Ó³õʼ»¯Ê¹ÓÃÁË£¬Ô´ÂëÖв»ÊÇÕâÑùдµÄ£¬µ«Êǽá¹ûÊÇÒ»ÑùµÄ£¬ÕâÀïÊÇStringÀàhashCodeµÄ¼ÆË㣺
int hashCode(string s) {
int h = 0, off = 0;
int len = s.length();
for (int i = 0; i < len; i++)
h = 31 * h + s[off++];
return h;
}
ÉÏÃæÊÇStringÀàµÄhashCodeµÄ¼ÆË㣬ÔÚHashMapÖУ¬»ùÓÚÕâ¸ö½á¹ûÓÖ½øÐÐÁ˽øÒ»²½¼ÆË㣬Ëã·¨ÈçÏ£º
int hash(int h) {
h ^= (h >>> 20) ^ (h >>> 12);
return h ^ (h >>> 7) ^ (h >>> 4);
}
ÆäÖвÎÊýh¾ÍÊÇStringµÄhashCode£¬ËäÈ»ÊǼòµ¥µÄËÄ´ÎÒÆÎ»ºÍÁù´Î°´Î»Òì»òµÄ¼ÆË㣬µ«ÊÇЧ¹ûÈ´ÊǾªÈ˵쬾­²âÊÔ£¬ÔÚʹÓÃ0.75×÷Ϊ¸ºÔØÒò×Ó£¬380ÍòÌõÊý¾Ý¹²1Íò¶à¸ö¼üµÄ·Ö²¼Çé¿öÊǼ«ÎªÆ½¾ùµÄ£¬²¢ÇÒÒÆÎ»ºÍ°´Î»Âß¼­ÔËËãÊÇÔÚËùÓÐÔËËãÖÐ×î¿ìµÄ£¬¼´Ê¹´¦ÀíµÄ¶¼ÊÇÖÐÎÄЧ¹ûÒ²·Ç³£ºÃ£¬±ÈÆðÍ


Ïà¹ØÎĵµ£º

Java NIO APIÏê½â

 
Java NIO APIÏê½â
ÔÚJDK
1.4ÒÔǰ£¬JavaµÄIO²Ù×÷¼¯ÖÐÔÚjava.ioÕâ¸ö°üÖУ¬ÊÇ»ùÓÚÁ÷µÄ×èÈû£¨blocking£©API¡£¶ÔÓÚ´ó¶àÊýÓ¦ÓÃÀ´Ëµ£¬ÕâÑùµÄAPIʹÓúܷ½
±ã£¬È»¶ø£¬Ò»Ð©¶ÔÐÔÄÜÒªÇó½Ï¸ßµÄÓ¦Óã¬ÓÈÆäÊÇ·þÎñ¶ËÓ¦Óã¬ÍùÍùÐèÒªÒ»¸ö¸üΪÓÐЧµÄ·½Ê½À´´¦ÀíIO¡£´ÓJDK 1.4Æð£¬NIO
API×÷Ϊһ¸ö»ùÓÚ»º³åÇø£¬²¢ÄÜÌṩ·Ç×èÈû(non-blo ......

Àí½âJavaÀà¼ÓÔØÔ­Àí

µÚÒ»²¿·Ö. Ìáʾ
ÎÒÐèÒª¶ÁÕâÆªÎÄÕÂÂð£¿
JavaÀà¼ÓÔØÆ÷¶ÔJavaϵͳµÄÔËÐÐÊÇÖÁ¹ØÖØÒªµÄ£¬µ«ÊÇÈ´³£³£±»ÎÒÃǺöÂÔ¡£JavaÀà¼ÓÔØÆ÷¸ºÔØ
ÔÚÔËÐÐʱ²éÕҺͼÓÔØÀà¡£×Ô¶¨ÒåÀà¼ÓÔØÆ÷¿ÉÒÔÍêÈ«¸Ä±äÀàµÄ¼ÓÔØ·½Ê½£¬ÒÔ×Ô¼ºÏ²»¶µÄ·½Ê½À´
¸öÐÔ»¯ÄãµÄJavaÐéÄâ»ú¡£±¾ÎļòÒªµÄ½éÉÜJavaÀà¼ÓÔØÆ÷£¬È»ºóͨ¹ýÒ»¸ö¹¹Ôì×Ô¶¨ÒåÀà¼ÓÔØÆ÷
µÄÀý×ÓÀ´ËµÃ÷£¬Õâ ......

ÓûìÏýÆ÷±£»¤ÄãµÄJAVA(.class)´úÂë(¶þ)

µÚ¶þÖÖ¼òµ¥µÄ·½·¨¾ÍÊÇ,ÔÚhttp://proguard.sourceforge.net/ÏÂÔØZIP°ü.×îеÄÊÇ4.5BETA
 ½âѹËõºó,Ë«»÷proguardgui.jar
 ÔËÐÐÈí¼þ
 ×îɵ¹ÏµÄÉèÖ÷½·¨:ÉèÖúÃINPUT/OUTPUT,µãPROCESS.½á¹û¾Í³öÀ´ÁË.
Éú³ÉÁË.a.class.b.class ÓÃJAD·´±àÒë,JADÌáʾ:²»ÄÜÍêÕûµÄ·´±àÒë....,´ò¿ª±àÒëºóµÄ´úÂë±äÁ¿ºÍº¯ÊýÃûÈ«²¿±»Ì ......

Java Annotation dzÎö2

Java»ù´¡-ѧϰʹÓÃAnnotation×¢½â¶ÔÏó
×¢½â(Ò²±»³ÆÎªÔªÊý¾Ý)ΪÎÒÃÇÔÚ´úÂëÖÐÌí¼ÓÐÅÏ¢ÌṩÁËÒ»ÖÖÐÎʽ»¯µÄ·½·¨,ʹÎÒÃÇ¿ÉÒÔÔÚÉÔºóij
¸öʱ¿Ì·Ç³£·½±ãµØÊ¹ÓÃÕâЩÊý¾Ý
 
1-1:»ù±¾Óï·¨
Java SE5ÄÚÖÃÈýÖÖ±ê×¼×¢½â
@Override:±íʾµ±Ç°µÄ·½·¨¶¨Ò彫¸²¸Ç³¬ÀàÖеķ½·¨.Èç¹ûÄ㲻СÐÄÆ´Ð´´íÎó,»òÕß·½·¨Ç©Ãû¶Ô²»Éϱ»¸²
¸ÇµÄ·½·¨ ......

תÌù: JavaµÄÀ¬»ø»ØÊÕ»úÖÆ

2006-01-18 13:53×÷Õߣº³ö´¦£º²©¿ÍÔ°ÔðÈα༭£º·½ÖÛ http://dev.yesky.com/178/2278678.shtml ÒýÑÔ
JavaµÄ¶ÑÊÇÒ»¸öÔËÐÐʱÊý¾ÝÇø£¬ÀàµÄʵÀý(¶ÔÏó)´ÓÖзÖÅä¿Õ¼ä¡£JavaÐéÄâ»ú(JVM)µÄ¶ÑÖд¢´æ×ÅÕýÔÚÔËÐеÄÓ¦ÓóÌÐòËù½¨Á¢µÄËùÓжÔÏó£¬ÕâЩ¶ÔÏóͨ¹ýnew¡¢newarray¡¢anewarrayºÍmultianewarrayµÈÖ¸ÁÁ¢£¬µ«ÊÇËüÃDz»ÐèÒ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ