Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö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 =


Ïà¹ØÎĵµ£º

java²¢·¢±à³Ìʵ¼ù±Ê¼Ç


1, ±£Ö¤Ḭ̈߳²È«µÄÈýÖÖ·½·¨:
    a, ²»Òª¿çÏ̷߳ÃÎʹ²Ïí±äÁ¿
    b, Ê¹¹²Ïí±äÁ¿ÊÇfinalÀàÐ͵Ä
    c, ½«¹²Ïí±äÁ¿µÄ²Ù×÷¼ÓÉÏͬ²½
2, Ò»¿ªÊ¼¾Í½«ÀàÉè¼Æ³ÉḬ̈߳²È«µÄ, ±ÈÔÚºóÆÚÖØÐÂÐÞ¸´Ëü,¸üÈÝÒ×.
3, ±àд¶àÏ̳߳ÌÐò, Ê×Ïȱ£Ö¤Ë ......

JAVA³ÌÐò·´±àÒ빤¾ß

JAVA³ÌÐò·´±àÒ빤¾ß
ÏÂÔØµØÖ·£ºhttp://java.decompiler.free.fr/?q=jdgui
JD-GUI
JD-GUI is a standalone graphical utility that displays Java source codes of “.class” files. You can browse the reconstructed source code with the JD-GUI for instant access to methods and fields.
JD-GUI is fre ......

javaÖбéÀúÒ»¸öMap

Map map = new HashMap();
Iterator iter = map.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
Object key = entry.getKey();
Object val = entry.getValue();
}
......

Java ´¦ÀíÒì³££¨³£¼ûÒì³£±í£©

Òì³£ÁÐ±í£º
1. java.lang.nullpointerexception 
2. Java.lang.classnotfoundexception
3. Java.lang.arithmeticexception
4. Java.lang.arrayindexoutofboundsexception
5. Java.lang.illegalargumentexception
6. java.lang.illegalaccessexception
1. java.lang.nullpoi ......

JavaÏß³Ìͬ²½ £¨synchronized wait notify£©

×¢£ºwait notify ¶¼ÊÇObjectµÄ·½·¨
 
ͬ²½£¨×èÈû£© £ºÊÇÒ»ÖÖ·ÀÖ¹¶Ô¹²Ïí×ÊÔ´·ÃÎʵ¼ÖµÄÊý¾Ý²»Ò»ÖµÄÒ»ÖÖģʽ¡£
ÏêϸÇë²Î¿´²Ù×÷ϵͳ¡£
ÔÚJavaÖУ¬ÓÉÓÚ¶Ô¶àÏ̵߳ÄÖ§³Ö£¬¶Ôͬ²½µÄ¿ØÖÆÖ÷Ҫͨ¹ýÒÔϼ¸¸ö·½·¨£¬synchronized£¬ºÍwait(),notify()ºÍnotifyAll(),ÏÂÃæ½øÐÐÒ»Ò»µÄ½²½â£º
A¹Ø¼ü×Ösynchronized
ÿ¸öjava¶Ô ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ