JavaÖеÄequals()ºÍhashCode()·½·¨
ÔÚJavaÓïÑÔÖУ¬Ò»°ã²»ÐèÒª×Ô¶¨Òåequals()ºÍhashCode()ÕâÁ½¸ö·½·¨£¬µ±ÐèÒª¶Ô¶ÔÏóµÄÄÚÈݽøÐбȽϵÄʱºò£¬²ÅÐèÒªÕâÑùÁ½¸ö·½·¨¡£ÀýÈ磬ÐèÒª°Ñ¶ÔÏó·ÅÈëHashSet»òÕ߰ѶÔÏó×÷Ϊkey·ÅÈëHashMap¡¢ Hashtableʱ£¬Èç¹û²»Ïë°Ñ¾ßÓÐÏàͬÄÚÈݵÄÁ½¸ö¶ÔÏó×÷ΪÁ½¸ö¶ÔÏóÀ´¿´´ý£¬¾ÍÐèÒªÖض¨ÒåÕâÁ½¸ö·½·¨¡£ÕâÁ½¸ö·½·¨µÄʹÓÃÊǽôÃÜÅäºÏµÄ£¬ÒªÊÇÉè¼ÆÁËÆäÖÐÒ»¸ö£¬¾ÍÒªÉè¼ÆÁíÍâÒ»¸ö¡£
equals():
ÓÃÓÚÁ½¸ö¶ÔÏóµÄ±È½Ï£¬ÔÚObjectÀàÖÐÒѾʵÏÖÁËÕâ¸ö·½·¨£¬ÊǶԶÔÏóÄÚ²¿µØÖ·µÄ±È½Ï£¬¼´Èç¹ûÁ½¸ö¶ÔÏóµÄÄÚ²¿µØÖ·ÊÇÒ»ÑùµÄÔòÊÇÏàµÈµÄ¡£Èç¹ûÒª°´ÕÕ¶ÔÏóÄÚÈݵĽøÐбȽϣ¬¾ÍÐèÒªÖØÔØÕâÁ½¸ö·½·¨¡£JavaÓïÑÔ¶Ôequals()µÄÒªÇóÈçÏ£¬ÕâЩҪÇóÊDZØÐë×ñѵģº
¶Ô³ÆÐÔ£ºÈç¹ûx.equals(y)·µ»ØÊÇ“true”£¬ÄÇôy.equals(x)Ò²Ó¦¸Ã·µ»ØÊÇ“true”¡£
·´ÉäÐÔ£ºx.equals(x)±ØÐë·µ»ØÊÇ“true”¡£
ÀàÍÆÐÔ£ºÈç¹ûx.equals(y)·µ»ØÊÇ“true”£¬¶øÇÒy.equals(z)·µ»ØÊÇ“true”£¬ÄÇôz.equals(x)Ò²Ó¦¸Ã·µ»ØÊÇ“true”¡£
Ò»ÖÂÐÔ£ºÈç¹ûx.equals(y)·µ»ØÊÇ“true”£¬Ö»ÒªxºÍyÄÚÈÝÒ»Ö±²»±ä£¬²»¹ÜÄãÖظ´x.equals(y)¶àÉٴΣ¬·µ»Ø¶¼ÊÇ“true”¡£
ÈκÎÇé¿öÏ£¬x.equals(null)ÓÀÔ¶·µ»ØÊÇ“false”£»x.equals(ºÍx²»Í¬ÀàÐ͵ĶÔÏó)ÓÀÔ¶·µ»ØÊÇ“false”¡£
hashCode():
Õâ¸ö·½·¨·µ»ØµÄÊÇÒ»¸öÓÃÀ´½øÐÐhash²Ù×÷µÄÕûÐÍÊý£¬¿ÉÓÃÓÚÔÚCollection¶ÔÏóÖж¨Î»Ìض¨¶ÔÏóµÄλÖá£ObjectÖÐĬÈϵÄʵÏÖÊǰѶÔÏóÄÚ²¿µØַת»¯ÎªÕûÊý×÷ΪhashCode¡£
hashCode()µÄ·µ»ØÖµºÍequals()µÄ¹ØϵÈçÏ£º
Èç¹ûx.equals(y)·µ»Ø“true”£¬ÄÇôxºÍyµÄhashCode()±ØÐëÏàµÈ¡£
Èç¹ûx.equals(y)·µ»Ø“false”£¬ÄÇôxºÍyµÄhashCode()ÓпÉÄÜÏàµÈ£¬Ò²ÓпÉÄܲ»µÈ¡£
ÕâÀïÓбØҪ˵Ã÷Ò»ÏÂHashMapµÄÔÀí¡£ÎªÁËÓÅ»¯²éÕÒ¶ÔÏóµÄÐÔÄÜ£¬ÔÚHashMapÖа´ÕÕ¼üÖµ¶ÔÏóµÄhashÖµ·ÅÁËÈô¸É¸öÏä×Ó£¬µ±ÓÐÒ»¸ö¼üÖµ¶ÔÏó¼ÓÈë½øÀ´Ê±£¬µ÷ÓüüÖµ¶ÔÏóµÄhashCode()·½·¨£¬¸ù¾Ý¼ÆËã³öµÄhashÖµ°Ñ¶ÔÏó·ÅÈë¶ÔÓ¦µÄÏä×Ó¡£µ±¶Ô¼üÖµ¶ÔÏó½øÐвéÕÒʱ£¬Ê×ÏȼÆËã¶ÔÏóµÄhashÖµ£¬ÕÒµ½¶ÔÓ¦µÄÏä×Ó£¬È»ºóµ÷ÓÃequals()ÓëÏä×ÓÖеĶÔÏóÖð¸ö±È½Ï£¬Ö±µ½ÕÒ³öÏàµÈµÄ¶ÔÏó»òÕß±éÀúÁËÒ»±é¡£
Èç¹ûx.eq
Ïà¹ØÎĵµ£º
Ò»¡¢final
¸ù¾Ý³ÌÐòÉÏÏÂÎÄ»·¾³£¬Java¹Ø¼ü×ÖfinalÓГÕâÊÇÎÞ·¨¸Ä±äµÄ”»òÕß“ÖÕ̬µÄ”º¬Ò壬Ëü¿ÉÒÔÐÞÊηdzéÏóÀà¡¢·Ç³éÏóÀà³ÉÔ±·½·¨ºÍ±äÁ¿¡£Äã¿ÉÄܳöÓÚÁ½ÖÖÀí½â¶øÐèÒª×èÖ¹¸Ä±ä£ºÉè¼Æ»òЧÂÊ¡£
finalÀ಻Äܱ»¼Ì³Ð£ ......
½Ì³Ì5 ËãÊýÔËËãѧϰ³ÌÐò ѧϰĿ±ê 5.1¼òµ¥¼Ó·¨Ñ§Ï°³ÌÐò СѧÉúÔÚ¸Õ¸Õ¿ªÊ¼Ñ§Ï°ÊýѧÔËËãµÄʱºò£¬ÐèÒª²»¶ÏµØ½øÐз´¸´´óÁ¿µÄÁ·Ï°£¬²ÅÄܹ»Ñ¸ËÙÕÆÎÕÕⲿ·ÖÄÚÈÝ¡£ÏÂÃ濪·¢Ò»¸ö¼òµ¥µÄ¼Ó·¨Ñ§Ï°³ÌÐò£¬Äܹ»²úÉú¼Ó·¨ÔËËãÈÃѧÉúÀ´Ñ§Ï°Ìá¸ß¡£ ±àд³ÌÐòÈçÏ£º 1 package lesson5; 2 3 public class Operation1 { 4 int number1; 5 ......
ArrayList ºÍVectorÊDzÉÓÃÊý×鷽ʽ´æ´¢Êý¾Ý£¬´ËÊý×éÔªËØÊý´óÓÚʵ¼Ê´æ´¢µÄÊý¾ÝÒÔ±ãÔö¼ÓºÍ²åÈëÔªËØ£¬¶¼ÔÊÐíÖ±½ÓÐòºÅË÷ÒýÔªËØ£¬µ«ÊDzåÈëÊý¾ÝÒªÉè¼Æµ½Êý×éÔªËØÒƶ¯µÈÄÚ´æ²Ù×÷£¬ËùÒÔË÷ÒýÊý¾Ý¿ì²åÈëÊý¾ÝÂý£¬VectorÓÉÓÚʹÓÃÁËsynchronized·½·¨£¨Ḭ̈߳²È«£©ËùÒÔÐÔÄÜÉϱÈArrayListÒª²î£¬LinkedListʹÓÃË«ÏòÁ´±íʵÏÖ´æ´¢£¬°´Ðòº ......