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

¼òµ¥»Ø¹ËJava»ù±¾¸ÅÄî

ÔÝʱÕâÑùÀí½â£¬Ï£Íû´ó¼ÒÖ¸³öÎҵĴíÎó
1.hashcode and equals:
 
equalsÈç¹ûÓÃÀ´ÅжÏÁ½¸ö¶ÔÏóµÄÄÚÈÝÊÇ·ñÏàͬ£¬ÐèÒªÖØд£¬ÒòΪequals() ĬÈÏÊDZȽÏÁ½¸ö¶ÔÏóµÄÒýÓá£
 
hashCode() ÊÇÓÃÀ´²úÉú¹þÏ£ÂêµÄ£¬¶ø¹þÏ£ÂêÊÇÓÃÀ´ÔÚÉ¢Áд洢½á¹¹ÖÐÈ·¶¨¶ÔÏóµÄ´æ´¢µØÖ·µÄ£¬Ïóutil°üÖÐµÄ ´ø hash µÄ¼¯ºÏÀ඼ÊÇÓÃÕâÖÖ´æ´¢½á¹¹ £ºHashMap,HashSet, ËûÃÇÔÚ½«¶ÔÏó´æ´¢Ê±£¨Ñϸñ˵ÊǶÔÏóÒýÓã©£¬ÐèҪȷ¶¨ËûÃǵĵØÖ·°É£¬¶øHashCode()¾ÍÊÇÕâ¸öÓÃ;µÄ£¬Ò»°ã¶¼ÐèÒªÖØж¨ÒåËüµÄ£¬ÒòΪĬÈÏÇé¿öÏ£¬ÓÉ Object ÀඨÒåµÄ hashCode ·½·¨»áÕë¶Ô²»Í¬µÄ¶ÔÏ󷵻ز»Í¬µÄÕûÊý£¬ÕâÒ»°ãÊÇͨ¹ý½«¸Ã¶ÔÏóµÄÄÚ²¿µØַת»»³ÉÒ»¸öÕûÊýÀ´ÊµÏֵģ¬ÏÖÔÚ¾Ù¸öÀý×ÓÀ´Ëµ£¬ ¾ÍÄÃHashSetÀ´Ëµ£¬ÔÚ½«¶ÔÏó´æÈëÆäÖÐʱ£¬Í¨¹ý±»´æÈë¶ÔÏóµÄ hashCode() À´È·¶¨¶ÔÏóÔÚ HashSet ÖеĴ洢µØÖ·£¬Í¨¹ýequals()À´È·¶¨´æÈëµÄ¶ÔÏóÊÇ·ñÖظ´£¬hashCode() £¬equals()¶¼ÐèÒª×Ô¼ºÖØж¨Ò壬ÒòΪhashCode()ĬÈÏÇ°ÃæÒѾ­ËµÀ²£¬¶øequals() ĬÈÏÊDZȽϵĶÔÏóÒýÓã¬ÄãÏÖÔÚÏëһϣ¬Èç¹ûÄã²»¶¨Òåequals()µÄ»°£¬ÄÇôͬһ¸öÀà²úÉúµÄÁ½¸öÄÚÈÝÍêÈ«ÏàͬµÄ¶ÔÏ󶼿ÉÒÔ´æÈëSet£¬ÒòΪËûÃÇÊÇͨ¹ý equals()À´È·¶¨µÄ£¬ÕâÑù¾ÍʹµÃHashSet ʧȥÁËËûµÄÒâÒå¡£
¿´Ò»ÏÂÏÂÃæÕâ¸ö£º
public class Test {
public static void main(String[] args) {
HashSet set = new HashSet();
for (int i = 0; i <= 3; i++){
set.add(new Demo1(i,i));
}
System.out.println(set);
set.add(new Demo1(1,1));
System.out.println(set);
System.out.println(set.contains(new Demo1(0,0)));
System.out.println(set.add(new Demo1(1,1)));
System.out.println(set.add(new Demo1(4,4)));
System.out.println(set);
}
private static class Demo1 {
private int value;
private int id;
public Demo1(int value,int id) {
this.value = value;
this.id=id;
}
public String toString() {
return " value = " + value;
}
public boolean equals(Object o) {
Demo1 a = (Demo1) o;
return (a.value == value) ? true : false;
}
public int hashCode() {
return id;
}
}
}
½á¹û£º
[ value = 2,  value = 1,  value = 3,  value = 0]
[ value = 2,  value = 1,  value = 3,  value = 0]
true
false
true
[ value = 2,  value = 4,  value = 1,  value = 3,  value =


Ïà¹ØÎĵµ£º

´ÓC++µ½JAVA£¬C++³ÌÐòԱѧϰJAVAµÄÖ¸ÄÏ

write by ¾ÅÌìÑãôá(JTianLing) -- blog.csdn.net/vagrxie
ÌÖÂÛÐÂÎÅ×é¼°Îļþ
Technorati ±êÇ©: JAVA
,C++
,Python
JAVA is not just another programming language. -- ÄäÃû
ѧϰ¸üеÄÓïÑÔ£¬ÓÐÖúÓÚÁ˽â±ðÈ˶ԾÉÓïÑÔÓÐÄÄЩ²»Âú¡£ -- ÄäÃû
 
Ç°ÑÔ
ÏÈ
˵Ã÷±¾ÎĵÄÐÐÎÄÏ°¹ß£¬ÎÄÕÂд×÷Á÷³ÌÒÔ±¾ÈËÔĶÁ¡¶Java Progra ......

java¼¯ºÏ¿ò¼Ü


 
 
JavaΪÊý¾Ý½á¹¹µÄÓ³É䶨ÒåÁËÒ»¸ö½Ó¿Újava.util.Map.ËüÓÐËĸöʵÏÖÀ࣬·Ö±ðÊÇHashMap, Hashtable,LinkedHashMapºÍTreeMapÖ÷ÒªÓÃÓÚ´æ´¢¼üÖµ¶Ô£¬¸ù¾Ý¼üµÃµ½Öµ£¬Òò´Ë²»ÔÊÐí¼üÖظ´£¬µ«ÔÊÐíÖµÖظ´¡£
HashMapÊÇÒ»¸ö×î³£ÓõÄMap£¬Ëü¸ù¾Ý¼üµÄHashCodeÖµ´æ´¢Êý¾Ý£¬¸ù¾Ý¼ü¿ÉÒÔÖ±½Ó»ñÈ¡ËüµÄÖµ£¬¾ßÓкܿìµÄ·ÃÎÊËٶȣ¬± ......

ÓÃJava½Ó¿ÚʵÏֻص÷º¯ÊýµÄµÈ¼Û¹¦ÄÜ

ÓÃJava½Ó¿ÚʵÏֻص÷º¯ÊýµÄµÈ¼Û¹¦ÄÜ
Ê×ÏÈ£¬¿´Ò»Ï»ص÷º¯ÊýµÄ¶¨Òå¼°ÆðÔ´£º
¼ò¶øÑÔÖ®£¬»Øµ÷º¯Êý¾ÍÊÇÒ»¸öͨ¹ýº¯ÊýÖ¸Õëµ÷Óõĺ¯Êý£¬Èç¹ûÄã°Ñº¯ÊýµÄÖ¸Õë(µØÖ·)×÷Ϊ²ÎÊý´«µÝ¸øÁíÒ»¸öº¯Êý£¬µ±Õâ¸öÖ¸Õë±»ÓÃΪµ÷ÓÃËüËùÖ¸ÏòµÄº¯Êýʱ£¬ÎÒÃǾÍ˵Êǻص÷º¯Êý¡£
ΪʲôҪʹÓûص÷º¯Êý£¿
ÒòΪ¿ÉÒ԰ѵ÷ÓÃÕßÓë±»µ÷ÓÃÕß·Ö¿ª¡£µ÷ÓÃÕß²»¹ØÐı» ......

javaÄÚ´æÒç³ö


ÄÚ´æÒç³öÓëÊý¾Ý¿âËø±íµÄÎÊÌ⣬¿ÉÒÔ˵ÊÇ¿ª·¢ÈËÔ±µÄجÃΣ¬Ò»°ãµÄ³ÌÐòÒì³££¬×ÜÊÇ¿ÉÒÔÖªµÀÔÚʲôʱºò»òÊÇÔÚʲô²Ù×÷²½ÖèÉϳöÏÖÁËÒì³££¬¶øÇÒ¸ù¾Ý¶ÑÕ»ÐÅÏ¢Ò²ºÜÈÝÒ׶¨Î»µ½³ÌÐòÖÐÊÇij´¦³öÏÖÁËÎÊÌâ¡£ÄÚ´æÒç³öÓëËø±íÔò²»È»£¬Ò»°ãÏÖÏóÊDzÙ×÷Ò»°ãʱ¼äºóϵͳԽÀ´Ô½Âý£¬Ö±µ½ËÀ»ú£¬µ«²¢²»ÄÜÃ÷È·ÊÇÔÚʲô²Ù×÷ÉϳöÏֵģ¬·¢ÉúµÄʱ¼äµãҲûÓÐ ......

JavaÕýÔò±í´ïʽÈëÃÅ

ÖÚËùÖÜÖª£¬ÔÚ³ÌÐò¿ª·¢ÖУ¬ÄÑÃâ»áÓöµ½ÐèҪƥÅä¡¢²éÕÒ¡¢Ìæ»»¡¢ÅжÏ×Ö·û´®µÄÇé¿ö·¢Éú£¬¶øÕâЩÇé¿öÓÐʱÓֱȽϸ´ÔÓ£¬Èç¹ûÓô¿±àÂ뷽ʽ½â¾ö£¬ÍùÍù»áÀ˷ѳÌÐòÔ±µÄʱ¼ä¼°¾«Á¦¡£Òò´Ë£¬Ñ§Ï°¼°Ê¹ÓÃÕýÔò±í´ïʽ£¬±ã³ÉÁ˽â¾öÕâһì¶ÜµÄÖ÷ÒªÊֶΡ£
 ´ó¼Ò¶¼ÖªµÀ£¬ÕýÔò±í´ïʽÊÇÒ»ÖÖ¿ÉÒÔÓÃÓÚģʽƥÅäºÍÌæ»»µÄ¹æ·¶£¬Ò»¸öÕýÔò±í´ïʽ¾ÍÊÇÓÉ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ