JavaÖÐHashMap£¬HashtableºÍLinkedList
½ñÌìÅöµ½Ò»¸öºÜÓÐÒâ˼µÄÎÊÌ⣬¾ÍÊǹØÓÚʹÓÃLinkedList×÷ΪHashMap»òÕßHashtableµÃkey£¬µ«ÊÇ×îºó·¢ÏÖÊý¾Ý²¢Ã»ÓÐ´æ½øÈ¥¡£
Ê×ÏÈ˵һÏÂHashMap£¬Hashtable°É£¬ËüÃǶ¼¼Ì³ÐÁËCloneable, Map, Serializable¡£ËüÃÇÁ½¸ö»ù±¾ÉÏÊÇÒ»ÑùµÄ£¬“The HashMap
class is roughly equivalent to Hashtable
, except that it is
unsynchronized and permits nulls.”¡£Çø±ð¾ÍÊÇHashMapÔÊÐí“ null
values and the null
key”£¬Í¬Ê± unsynchronized¡£ËüµÄÐÔÄÜÈ¡¾öÓÚ“ initial capacity
and load factor
”£¬¾ßÌå²Î¿¼¹Ù·½Îĵµ¡£HashMap»¹ÓÐÒ»¸öÌØÐÔ¾ÍÊDz»Äܱ£Ö¤´æÈëµÄÔªËØµÄ˳Ðò£¬“HashMap does not guarantee that the order
will remain constant over time¡£” ¶ÔÓÚ´æÈëµ½ÀïÃæµÄkey£¬ÒªÇó“To successfully store and retrieve objects from a hashtable, the
objects used as keys must implement the hashCode
method and the equals
method. ”¡£¸ü¾ßÎҵIJâÊÔ£¬ÆäʵÕâ¸ö¶ÔÓÚHashMapÒ²ÊÇÊÊÓõġ£
Õâ¸ö¾ÍºÍÎÒ½ñÌìÅöµ½µÄÎÊÌâÁªÏµÉÏÁË£¬LinkedListÀàÀïÃæµÄhashCode()º¯ÊýÀ´Ô´ÓÚList.hashCode()£¬¾ßÌåÈçÏ£º
int hashCode = 1;
Iterator<E> i = list.iterator();
while (i.hasNext()) {
E obj = i.next();
hashCode = 31*hashCode + (obj==null ? 0 : obj.hashCode());
}
Ò²¾ÍÊÇ˵hashCodeÒÀÀµÓÚÄÚ²¿´æ´¢µÄ¶ÔÏó£¬Ç¡ºÃÎÒ´æ´¢µÄÊÇÒ»¸ö³éÏóÀ࣬ÒÔ·½±ãʵÏÖ¶à̬ÐÔ£¬ËùÒÔ²¢Ã»ÓÐʵÏÖhashCodeº¯Êý¡£Èç¹û´æ´¢µÄÊÇÀàËÆStringµÄ»ù±¾Êý¾ÝÀàÐÍ»òÕßÊÇʵÏÖÁËhashCodeº¯ÊýµÄ¶ÔÏó¾Í¿ÉÒÔÁË¡£
×îºó»¹ÓÐÒ»¸öºÍHashMapÓеãÈÝÒ×»ìÏýµÄÀà¾ÍÊÇTreeMap¡£Ëü¼Ì³ÐÁË“Serializable, Cloneable, Map<K,V>, SortedMap<K,V>”£¬ÊÇSortedMap½Ó¿ÚÀàΨһµÄʵÏÖ¡£Ëü±¾ÖÊÉÏÊÇ“Red-Black tree”£¬ÀïÃæ´æ´¢µÄkeyÊÇÉýÐòÅÅÁе쬓ascending key order”¡£
²Î¿¼£º
http://java.sun.com/j2se/1.4.2/docs/api/java/util/HashMap.html
http://java.sun.com/j2se/1.4.2/docs/api/java/util/Hashtable.html
http://java.sun.com/j2se/1.5.0/docs/api/java/util/LinkedList.html
http://java.sun.com/j2se/1.5.0/docs/api/java/util/TreeMap.html
http://java.sun.com/j2se/1.5.0/docs/api/java/util/SortedMap.html
Ïà¹ØÎĵµ£º
³ýÁ˹ØÏµÐÍÊý¾Ý¿âÍ⣬»¹ÓÐkey-valueÐÍÊý¾Ý¿â¿ÉÒÔÑ¡Ôñ£¬ÔÚ´óÐ͵IJéѯϵͳÖУ¬key-valueÐÍÊý¾Ý¿â¿ÉÒÔ³öÉ«µÄÍê³ÉijЩÈÎÎñ¡£
OracleµÄBerkeley DB¾ÍÊÇÒ»ÖÖkey-valueÐÍÊý¾Ý¿â£¬±¾ÎļòÒª½éÉÜÔÚjavaÖÐʹÓÃBerkeley DB¡£
PartKey.java:
import java.io.Serializable;
public class PartKey implements Serializable
{
priva ......
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpMethod;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.URIException;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.meth ......
×î½ü°àÀïµÄͬѧ¶¼Ã¦×ű¨°à£¬Óиö´ïÄÚÊÇjavaÅàѵ£¬ÓиöÉîÀ¶ÊÇC++Åàѵ£¬ÍøÉÏ¿´ÁËЩÌû×Ó˵ʲôµÄ¶¼ÓУ¬×ÔÎҸоõÅàÑøÒ»¸öC++³ÌÐòÔ±µÄÖÜÆÚÒª±ÈÅàÑøÒ»¸öjAVA³ÌÐòÔ±µÄÖÜÆÚ³¤ºÜ¶à£¬µ±È»£¬C++ÒªÊÇѧµÄºÃµÄ»°¿Ï¶¨±ÈѧjavaµÄÅ££¬µ«ÊǸ¶³öµÄ´ú¼Û¸öÈËÈÏΪÊÇÓкܴó²î¾àµÄ¡£¶ÔÓÚÏÖÔÚÊг¡É϶ÔÓÚÓïÑÔµÄÐèÇóÒ² ......
´Ó½ñÌ쿪ʼ, ÎÒÒª½«°ÑThinking in JavaµÄÿ¸öÀý×Ó¶¼ÇýøµçÄÔÀï, Ö»ÓÐÕâÑùÎÒµÄjava»ù´¡²Å»áÓÐÖʵÄÌá¸ß.
¼ÇµÃÒÔǰÓÐÈË˵¹ý, ×µÄ·½·¨ÍùÍù¾ÍÊǽݾ¶,¹Ø¼üÔÚÓÚ¼á³Ö.
¼¼ÊõÒ²ÊÇÕâÑù.
½ñÌìÏÈ´Ó×Ô¼º½Ï¸ÐȤµÄType InformationÄÇÒ»ÕÂÇÃÆð.
ÇÃÁËÊ®¼¸¸öÎļþµÄ´úÂë, ¶ÔClass ÀàµÄʹÓÿÉνÊì͸ÁË. Ïà±ÈÒÔǰ, ¹â¿´Êé²»Á·Ï°, ÏÖÔÚµÄÓ¡Ï ......
package cn.vicky.reg;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class MyEclipseReg {
// ///////////////////////////////////////////////////////////
// ÔËÐиÃÎļþ ÊäÈëÓû§Ãû µã»÷»Ø³µ¼´¿ÉÉú³É MyEclipse 6.0 ºÍ 7.0 ͨÓû§×¢²áÂë
// ///// ......