java collection½Ó¿Ú
1¡¢Collection ºÍ CollectionsµÄÇø±ð¡£
CollectionsÊǸöjava.utilϵÄÀ࣬Ëü°üº¬Óи÷ÖÖÓйØjava¼¯ºÏ²Ù×÷µÄ¾²Ì¬·½·¨¡£
CollectionÊǸöjava.utilϵĽӿڣ¬ËüÊǸ÷ÖÖjava¼¯ºÏ½á¹¹µÄ¸¸½Ó¿Ú
2¡¢List, Set, MapÊÇ·ñ¼Ì³Ð×ÔCollection½Ó¿Ú? List£¬SetÊÇ Map²»ÊÇ
3¡¢ArrayListºÍVectorµÄÇø±ð¡£
(1).ͬ²½ÐÔ:VectorÊÇḬ̈߳²È«µÄ£¬Ò²¾ÍÊÇ˵ÊÇͬ²½µÄ£¬¶øArrayListÊÇÏß³ÌÐò²»°²È«µÄ£¬²»ÊÇͬ²½µÄ
(2).Êý¾ÝÔö³¤:µ±ÐèÒªÔö³¤Ê±,VectorĬÈÏÔö³¤ÎªÔÀ´Ò»Å࣬¶øArrayListÈ´ÊÇÔÀ´µÄÒ»°ë
4¡¢HashMapºÍHashtableµÄÇø±ð
(1).ÀúÊ·ÔÒò:HashtableÊÇ»ùÓڳ¾ɵÄDictionaryÀàµÄ£¬HashMapÊÇJava 1.2Òý½øµÄMap½Ó¿ÚµÄÒ»¸öʵÏÖ
(2).ͬ²½ÐÔ:HashtableÊÇḬ̈߳²È«µÄ£¬Ò²¾ÍÊÇ˵ÊÇͬ²½µÄ£¬¶øHashMapÊÇÏß³ÌÐò²»°²È«µÄ£¬²»ÊÇͬ²½µÄ
(3).Öµ£ºÖ»ÓÐHashMap¿ÉÒÔÈÃÄ㽫¿ÕÖµ×÷Ϊһ¸ö±íµÄÌõÄ¿µÄkey»òvalue
Map¡¢Set¡¢Iteratorµü´úÏê½â
Map½Ó¿Ú¶¨ÒåÁËËÄÖÖÀàÐ͵ķ½·¨£¬Ã¿¸öMap¶¼°üº¬ÕâЩ·½·¨¡£
equals(Object o)±È½ÏÖ¸¶¨¶ÔÏóÓë´ËMapµÄµÈ¼ÛÐÔ¡£
hashCode()·µ»Ø´ËMapµÄ¹þÏ£Âë¡£
Map¶¨ÒåÁ˼¸¸öÓÃÓÚ²å·ÅºÍɾ³ýÔªËØµÄ±ä»»·½·¨¡£
remove(Object key) ´ÓMapÖÐɾ³ý¼üºÍ¹ØÁªµÄÖµ¡£
put(object key,Object value) ½«Ö¸¶¨ÖµÓëÖ¸¶¨¼üÏà¹ØÁª¡£
clear() ´ÓMapËäɾ³ýËùÓÐÓ³Éä¡£
putAll(Map t) ½«Ö¸¶¨MapÖеÄËùÓÐÓ³É䏴֯µ½´ËMap¡£
²é¿´Map
µü´úMapÖеÄÔªËØ²»´æÔÚÖ±½ÓÁ˵±µÄ·½·¨¡£¼ÙÈçÒª²éѯij¸öMapÒÔÁ˽âÆäÄÄÐ©ÔªËØÂú×ãÌØ¶¨²éѯ»ò¼ÙÈçÒªµü´úÆäËùÓÐÔªËØ£¬ÔòÄúÊ×ÏÈÐèÒª»ñÈ¡¸Ã
MapµÄ“ÊÓͼ”¡£ÓÐÈýÖÖ¿ÉÄܵÄÊÓͼ£ºËùÓмüÖµ¶Ô¡¢ËùÓмü¡¢ËùÓÐÖµ¡£Ç°Á½¸öÊÓͼ¾ù·µ»ØSet¶ÔÏ󣬵ÚÈý¸öÊÓͼ·µ»ØCollection¶ÔÏó¡£¾ÍÕâÁ½ÖÖ
Çé¿ö¶øÑÔ£¬ÎÊÌâµ½ÕâÀﲢûÓнáÊø£¬ÕâÊÇÒòΪÄúÎÞ·¨Ö±½Óµü´úCollection¶ÔÏó»òSet¶ÔÏó¡£Òª½øÐеü´ú£¬Äú±ØÐë»ñµÃÒ»¸öIterator¶ÔÏó¡£Òò´ËÒª
µü´úMapµÄÔªËØ£¬±ØÐë½øÐÐÈçϱàÂ룺
Iterator keyValuePairs = aMap.entrySet().iterator();
Iterator keys=aMap.keySet().iterator();
Iterator values=aMap.values().iterator();
ÖµµÃ×¢ÒâµÄÊÇ£¬ÕâЩ¶ÔÏóʵ¼ÊÉÏÊÇ»ù´¡MapµÄÊÓͼ£¬¶ø²»Êǰüº¬ËùÓÐÔªËØµÄ¸±±¾¡£
ʹÓÃIterator¶ÔÏó£¬Äú¿ÉÒÔ±éÀúMapµÄÔªËØ£¬»¹¿ÉÒÔɾ³ýMapÖеÄÔªËØ¡£
EnterySet()·µ»ØMapÖÐËù°üº¬Ó³ÉäµÄSetÊÓͼ¡£SetÖеÄÿ¸öÔªËØ¶¼ÊÇÒ»¸öMap.Entry¶ÔÏ󣬿ÉÒÔʹÓÃgetKey()ºÍgetValue()·½·¨·ÃÎʺóÕߵļüÔª
ËØºÍÖµÔªËØ¡£
keySet(£©·µ»ØMapÖÐËù°üº¬¼üµÄSetÊÓͼ¡£É¾³ýSe
Ïà¹ØÎĵµ£º
1¡¢Æ¥ÅäË«ÒýºÅ¼äÄÚÈÝ£º
Java´úÂë
public
void
test1() {
// Æ¥ÅäË«ÒýºÅ¼äÄÚÈÝ
String pstr = "\"([^\"]+)\""
;
Pattern ......
¼òµ¥À´Ëµ£¬ ½Ó¿ÚÊǹ«¿ªµÄ£¬ÀïÃæ²»ÄÜÓÐ˽Óеķ½·¨»ò±äÁ¿£¬ÊÇÓÃÓÚÈñðÈËʹÓõ쬶ø³éÏóÀàÊÇ¿ÉÒÔÓÐ˽Óз½·¨»ò˽ÓбäÁ¿µÄ£¬ÁíÍ⣬ʵÏÖ½Ó¿ÚµÄÒ»¶¨ÒªÊµÏÖ½Ó¿ÚÀﶨÒåµÄËùÓз½·¨£¬¶øÊµÏÖ³éÏóÀà¿ÉÒÔÓÐÑ¡ÔñµØÖØÐ´ÐèÒªÓõ½µÄ·½·¨¡£
Ò»°ãµÄÓ¦ÓÃÀ×î¶¥¼¶µÄÊǽӿڣ¬È»ºóÊdzéÏóÀàʵÏÖ½Ó¿Ú£¬×îºó²Åµ½¾ßÌåÀàʵÏÖ¡£
»¹ÓУ¬½Ó¿Ú¿ÉÒÔʵÏÖ¶àÖ ......
ºÜ¶àÈ˶¼ÖªµÀÔÚswingÖмÓÈëjPopupMenu×é¼þºó¿ÉÒÔÔÚÊó±êµÄÇý¶¯ÏÂ̽³öÒ»¸ö²Ëµ¥£¬µ«ÊÇ£¬Èç¹ûÓÃÒ»°ã×ö·¨£¬ÔÚ½çÃæÉϵ¥»÷×ó¼üÒ²»áµ¯³ö²Ëµ¥£¬ÄÇôÓÐûÓа취ÔÚÖ»Óе¥»÷ÓÒ¼ü²Åµ¯³ö²Ëµ¥ÄØ£¿ÆäʵֻÊÇÓõ½ÁËÒ»¸öС¼¼ÇÉ¡£ ÄãµÄµ¯³öÊó±ê²Ëµ¥Êó±êÇý¶¯Ñ¡Ôñ MouseReleased È»ºóÔÙÔÚ¼àÌýʼþµÄ·½·¨ÖмÓÈëÏÂÃæµÄ´úÂë¾Í¿ÉÒÔÁË£º if(evt.isPop ......
1. ±à³Ì¹ßÀý(Programming Practices)
9.1 Ìṩ¶ÔʵÀýÒÔ¼°Àà±äÁ¿µÄ·ÃÎÊ¿ØÖÆ(Providing Access to Instance and Class Variables)
ÈôûÓÐ×ã¹»ÀíÓÉ£¬²»Òª°ÑʵÀý»òÀà±äÁ¿ÉùÃ÷Ϊ¹«ÓС£Í¨³££¬ÊµÀý±äÁ¿ÎÞÐèÏÔʽµÄÉèÖÃ(set)ºÍ»ñÈ¡(gotten)£¬Í¨³£Õâ×÷Ϊ·½·¨µ÷ÓõıßԵЧӦ (side effect ......