请问java的hashmap容器中,每个对象的hashcode都不相等,它的存取效率是高还是低呢? hashmap 中equals和hashcode方法的区别

hashmap equals\u76f8\u540c hashcode\u4e00\u5b9a\u76f8\u540c\u5417

\u4f17\u6240\u5468\u4e4b\uff0cString \u3001Math\u3001\u8fd8\u6709Integer\u3001Double\u3002\u3002\u3002\u3002\u7b49\u8fd9\u4e9b\u5c01\u88c5\u7c7b\u91cd\u5199\u4e86Object\u4e2d\u7684equals()\u65b9\u6cd5\uff0c\u8ba9\u5b83\u4e0d\u518d\u6bd4\u8f83\u53e5\u67c4\uff08\u5f15\u7528\uff09\uff0c\u800c\u662f\u6bd4\u8f83\u5bf9\u8c61\u4e2d\u5b9e\u9645\u5305\u542b\u7684\u6574\u6570\u7684\u503c\uff0c\u5373\u6bd4\u8f83\u7684\u662f\u5185\u5bb9\u3002
\u800cObject\u7684equals()\u65b9\u6cd5\u6bd4\u8f83\u7684\u662f\u5730\u5740\u503c\u3002
\u4e00\u822c\u6765\u8bf4\uff0c\u5982\u679c\u4f60\u8981\u628a\u4e00\u4e2a\u7c7b\u7684\u5bf9\u8c61\u653e\u5165\u5bb9\u5668\u4e2d\uff0c\u90a3\u4e48\u901a\u5e38\u8981\u4e3a\u5176\u91cd\u5199equals()\u65b9\u6cd5\uff0c\u8ba9\u4ed6\u4eec\u6bd4\u8f83\u5730\u5740\u503c\u800c\u4e0d\u662f\u5185\u5bb9\u503c\u3002\u7279\u522b\u5730\uff0c\u5982\u679c\u8981\u628a\u4f60\u7684\u7c7b\u7684\u5bf9\u8c61\u653e\u5165\u6563\u5217\u4e2d\uff0c\u90a3\u4e48\u8fd8\u8981\u91cd\u5199hashCode()\u65b9\u6cd5\uff1b\u8981\u653e\u5230\u6709\u5e8f\u5bb9\u5668\u4e2d\uff0c\u8fd8\u8981\u91cd\u5199compareTo()\u65b9\u6cd5\u3002
\u672c\u4eba\u611a\u89c1,\u53ea\u6709\u7528\u5230Hashtable\u3001HashMap\u3001HashSet\u3001LinkedHashMap\u7b49\u65f6\u624d\u8981\u6ce8\u610fhashcode\uff0c\u5176\u4ed6\u5730\u65b9hashcode\u65e0\u7528\u3002
\u4e3a\u4ec0\u4e48\u8981\u91cd\u5199hashCode\u65b9\u6cd5?
\u6211\u4eec\u5e94\u8be5\u5148\u4e86\u89e3java\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u662f\u5426\u76f8\u7b49\u7684\u89c4\u5219\u3002
\u5728java\u7684\u96c6\u5408\u4e2d\uff0c\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u662f\u5426\u76f8\u7b49\u7684\u89c4\u5219\u662f\uff1a
\u9996\u5148\uff0c\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u7684hashCode\u662f\u5426\u76f8\u7b49
\u5982\u679c\u4e0d\u76f8\u7b49\uff0c\u8ba4\u4e3a\u4e24\u4e2a\u5bf9\u8c61\u4e5f\u4e0d\u76f8\u7b49
\u5982\u679c\u76f8\u7b49\uff0c\u5219\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u7528equals\u8fd0\u7b97\u662f\u5426\u76f8\u7b49
\u5982\u679c\u4e0d\u76f8\u7b49\uff0c\u8ba4\u4e3a\u4e24\u4e2a\u5bf9\u8c61\u4e5f\u4e0d\u76f8\u7b49
\u5982\u679c\u76f8\u7b49\uff0c\u8ba4\u4e3a\u4e24\u4e2a\u5bf9\u8c61\u76f8\u7b49
\u6211\u4eec\u5728equals\u65b9\u6cd5\u4e2d\u9700\u8981\u5411\u4e0b\u8f6c\u578b\uff0c\u6548\u7387\u5f88\u4f4e\uff0c\u6240\u4ee5\u5148\u5224\u65adhashCode\u65b9\u6cd5\u53ef\u4ee5\u63d0\u9ad8\u6548\u7387
--------------------------------------
\u4eca\u5929\u4e0b\u5348\u7814\u7a76\u4e86\u534a\u5929hashcode()\u548cequals()\u65b9\u6cd5\uff0c\u7ec8\u4e8e\u6709\u4e86\u4e00\u70b9\u70b9\u7684\u660e\u767d\uff0c\u5199\u4e0b\u6765\u4e0e\u5927\u5bb6\u5206\u4eab\uff08zhaoxudong 2008.10.23\u665a21.36\uff09\u3002
1. \u9996\u5148equals()\u548chashcode()\u8fd9\u4e24\u4e2a\u65b9\u6cd5\u90fd\u662f\u4eceobject\u7c7b\u4e2d\u7ee7\u627f\u8fc7\u6765\u7684\u3002
equals()\u65b9\u6cd5\u5728object\u7c7b\u4e2d\u5b9a\u4e49\u5982\u4e0b\uff1a
public boolean equals(Object obj) {
return (this == obj);
}
\u5f88\u660e\u663e\u662f\u5bf9\u4e24\u4e2a\u5bf9\u8c61\u7684\u5730\u5740\u503c\u8fdb\u884c\u7684\u6bd4\u8f83\uff08\u5373\u6bd4\u8f83

\u4f17\u6240\u5468\u4e4b\uff0cString \u3001Math\u3001\u8fd8\u6709Integer\u3001Double\u3002\u3002\u3002\u3002\u7b49\u8fd9\u4e9b\u5c01\u88c5\u7c7b\u91cd\u5199\u4e86Object\u4e2d\u7684equals()\u65b9\u6cd5\uff0c\u8ba9\u5b83\u4e0d\u518d\u6bd4\u8f83\u53e5\u67c4\uff08\u5f15\u7528\uff09\uff0c\u800c\u662f\u6bd4\u8f83\u5bf9\u8c61\u4e2d\u5b9e\u9645\u5305\u542b\u7684\u6574\u6570\u7684\u503c\uff0c\u5373\u6bd4\u8f83\u7684\u662f\u5185\u5bb9\u3002

\u800cObject\u7684equals()\u65b9\u6cd5\u6bd4\u8f83\u7684\u662f\u5730\u5740\u503c\u3002

\u4e00\u822c\u6765\u8bf4\uff0c\u5982\u679c\u4f60\u8981\u628a\u4e00\u4e2a\u7c7b\u7684\u5bf9\u8c61\u653e\u5165\u5bb9\u5668\u4e2d\uff0c\u90a3\u4e48\u901a\u5e38\u8981\u4e3a\u5176\u91cd\u5199equals()\u65b9\u6cd5\uff0c\u8ba9\u4ed6\u4eec\u6bd4\u8f83\u5730\u5740\u503c\u800c\u4e0d\u662f\u5185\u5bb9\u503c\u3002\u7279\u522b\u5730\uff0c\u5982\u679c\u8981\u628a\u4f60\u7684\u7c7b\u7684\u5bf9\u8c61\u653e\u5165\u6563\u5217\u4e2d\uff0c\u90a3\u4e48\u8fd8\u8981\u91cd\u5199hashCode()\u65b9\u6cd5\uff1b\u8981\u653e\u5230\u6709\u5e8f\u5bb9\u5668\u4e2d\uff0c\u8fd8\u8981\u91cd\u5199compareTo()\u65b9\u6cd5\u3002

\u672c\u4eba\u611a\u89c1,\u53ea\u6709\u7528\u5230Hashtable\u3001HashMap\u3001HashSet\u3001LinkedHashMap\u7b49\u65f6\u624d\u8981\u6ce8\u610fhashcode\uff0c\u5176\u4ed6\u5730\u65b9hashcode\u65e0\u7528\u3002

\u4e3a\u4ec0\u4e48\u8981\u91cd\u5199hashCode\u65b9\u6cd5?

\u6211\u4eec\u5e94\u8be5\u5148\u4e86\u89e3java\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u662f\u5426\u76f8\u7b49\u7684\u89c4\u5219\u3002

\u5728java\u7684\u96c6\u5408\u4e2d\uff0c\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u662f\u5426\u76f8\u7b49\u7684\u89c4\u5219\u662f\uff1a

\u9996\u5148\uff0c\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u7684hashCode\u662f\u5426\u76f8\u7b49

\u5982\u679c\u4e0d\u76f8\u7b49\uff0c\u8ba4\u4e3a\u4e24\u4e2a\u5bf9\u8c61\u4e5f\u4e0d\u76f8\u7b49
\u5982\u679c\u76f8\u7b49\uff0c\u5219\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u7528equals\u8fd0\u7b97\u662f\u5426\u76f8\u7b49
\u5982\u679c\u4e0d\u76f8\u7b49\uff0c\u8ba4\u4e3a\u4e24\u4e2a\u5bf9\u8c61\u4e5f\u4e0d\u76f8\u7b49
\u5982\u679c\u76f8\u7b49\uff0c\u8ba4\u4e3a\u4e24\u4e2a\u5bf9\u8c61\u76f8\u7b49

\u6211\u4eec\u5728equals\u65b9\u6cd5\u4e2d\u9700\u8981\u5411\u4e0b\u8f6c\u578b\uff0c\u6548\u7387\u5f88\u4f4e\uff0c\u6240\u4ee5\u5148\u5224\u65adhashCode\u65b9\u6cd5\u53ef\u4ee5\u63d0\u9ad8\u6548\u7387

--------------------------------------

\u4eca\u5929\u4e0b\u5348\u7814\u7a76\u4e86\u534a\u5929hashcode()\u548cequals()\u65b9\u6cd5\uff0c\u7ec8\u4e8e\u6709\u4e86\u4e00\u70b9\u70b9\u7684\u660e\u767d\uff0c\u5199\u4e0b\u6765\u4e0e\u5927\u5bb6\u5206\u4eab\uff08zhaoxudong 2008.10.23\u665a21.36\uff09\u3002
1. \u9996\u5148equals()\u548chashcode()\u8fd9\u4e24\u4e2a\u65b9\u6cd5\u90fd\u662f\u4eceobject\u7c7b\u4e2d\u7ee7\u627f\u8fc7\u6765\u7684\u3002
equals()\u65b9\u6cd5\u5728object\u7c7b\u4e2d\u5b9a\u4e49\u5982\u4e0b\uff1a
public boolean equals(Object obj) {
return (this == obj);
}
\u5f88\u660e\u663e\u662f\u5bf9\u4e24\u4e2a\u5bf9\u8c61\u7684\u5730\u5740\u503c\u8fdb\u884c\u7684\u6bd4\u8f83\uff08\u5373\u6bd4\u8f83\u5f15\u7528\u662f\u5426\u76f8\u540c\uff09\u3002\u4f46\u662f\u6211\u4eec\u5fc5\u9700\u6e05\u695a\uff0c\u5f53String \u3001Math\u3001\u8fd8\u6709Integer\u3001Double\u3002\u3002\u3002\u3002\u7b49\u8fd9\u4e9b\u5c01\u88c5\u7c7b\u5728\u4f7f\u7528equals()\u65b9\u6cd5\u65f6\uff0c\u5df2\u7ecf\u8986\u76d6\u4e86object\u7c7b\u7684equals\uff08\uff09\u65b9\u6cd5\u3002\u6bd4\u5982\u5728String\u7c7b\u4e2d\u5982\u4e0b\uff1a
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String)anObject;
int n = count;
if (n == anotherString.count) {
char v1[] = value;
char v2[] = anotherString.value;
int i = offset;
int j = anotherString.offset;
while (n-- != 0) {
if (v1[i++] != v2[j++])
return false;
}
return true;
}
}
return false;
}
\u5f88\u660e\u663e\uff0c\u8fd9\u662f\u8fdb\u884c\u7684\u5185\u5bb9\u6bd4\u8f83\uff0c\u800c\u5df2\u7ecf\u4e0d\u518d\u662f\u5730\u5740\u7684\u6bd4\u8f83\u3002\u4f9d\u6b21\u7c7b\u63a8Double\u3001Integer\u3001Math\u3002\u3002\u3002\u3002\u7b49\u7b49\u8fd9\u4e9b\u7c7b\u90fd\u662f\u91cd\u5199\u4e86equals()\u65b9\u6cd5\u7684\uff0c\u4ece\u800c\u8fdb\u884c\u7684\u662f\u5185\u5bb9\u7684\u6bd4\u8f83\u3002\u5f53\u7136\u4e86\u57fa\u672c\u7c7b\u578b\u662f\u8fdb\u884c\u503c\u7684\u6bd4\u8f83\uff0c\u8fd9\u4e2a\u6ca1\u6709\u4ec0\u4e48\u597d\u8bf4\u7684\u3002
\u6211\u4eec\u8fd8\u5e94\u8be5\u6ce8\u610f\uff0cJava\u8bed\u8a00\u5bf9equals()\u7684\u8981\u6c42\u5982\u4e0b\uff0c\u8fd9\u4e9b\u8981\u6c42\u662f\u5fc5\u987b\u9075\u5faa\u7684\uff1a
• \u5bf9\u79f0\u6027\uff1a\u5982\u679cx.equals(y)\u8fd4\u56de\u662f\u201ctrue\u201d\uff0c\u90a3\u4e48y.equals(x)\u4e5f\u5e94\u8be5\u8fd4\u56de\u662f\u201ctrue\u201d\u3002
• \u53cd\u5c04\u6027\uff1ax.equals(x)\u5fc5\u987b\u8fd4\u56de\u662f\u201ctrue\u201d\u3002
• \u7c7b\u63a8\u6027\uff1a\u5982\u679cx.equals(y)\u8fd4\u56de\u662f\u201ctrue\u201d\uff0c\u800c\u4e14y.equals(z)\u8fd4\u56de\u662f\u201ctrue\u201d\uff0c\u90a3\u4e48z.equals(x)\u4e5f\u5e94\u8be5\u8fd4\u56de\u662f\u201ctrue\u201d\u3002
• \u8fd8\u6709\u4e00\u81f4\u6027\uff1a\u5982\u679cx.equals(y)\u8fd4\u56de\u662f\u201ctrue\u201d\uff0c\u53ea\u8981x\u548cy\u5185\u5bb9\u4e00\u76f4\u4e0d\u53d8\uff0c\u4e0d\u7ba1\u4f60\u91cd\u590dx.equals(y)\u591a\u5c11\u6b21\uff0c\u8fd4\u56de\u90fd\u662f\u201ctrue\u201d\u3002
• \u4efb\u4f55\u60c5\u51b5\u4e0b\uff0cx.equals(null)\uff0c\u6c38\u8fdc\u8fd4\u56de\u662f\u201cfalse\u201d\uff1bx.equals(\u548cx\u4e0d\u540c\u7c7b\u578b\u7684\u5bf9\u8c61)\u6c38\u8fdc\u8fd4\u56de\u662f\u201cfalse\u201d\u3002
\u4ee5\u4e0a\u8fd9\u4e94\u70b9\u662f\u91cd\u5199equals()\u65b9\u6cd5\u65f6\uff0c\u5fc5\u987b\u9075\u5b88\u7684\u51c6\u5219\uff0c\u5982\u679c\u8fdd\u53cd\u4f1a\u51fa\u73b0\u610f\u60f3\u4e0d\u5230\u7684\u7ed3\u679c\uff0c\u8bf7\u5927\u5bb6\u4e00\u5b9a\u8981\u9075\u5b88\u3002
2. \u5176\u6b21\u662fhashcode() \u65b9\u6cd5\uff0c\u5728object\u7c7b\u4e2d\u5b9a\u4e49\u5982\u4e0b\uff1a
public native int hashCode();
\u8bf4\u660e\u662f\u4e00\u4e2a\u672c\u5730\u65b9\u6cd5\uff0c\u5b83\u7684\u5b9e\u73b0\u662f\u6839\u636e\u672c\u5730\u673a\u5668\u76f8\u5173\u7684\u3002\u5f53\u7136\u6211\u4eec\u53ef\u4ee5\u5728\u81ea\u5df1\u5199\u7684\u7c7b\u4e2d\u8986\u76d6hashcode()\u65b9\u6cd5\uff0c\u6bd4\u5982String\u3001Integer\u3001Double\u3002\u3002\u3002\u3002\u7b49\u7b49\u8fd9\u4e9b\u7c7b\u90fd\u662f\u8986\u76d6\u4e86hashcode()\u65b9\u6cd5\u7684\u3002\u4f8b\u5982\u5728String\u7c7b\u4e2d\u5b9a\u4e49\u7684hashcode()\u65b9\u6cd5\u5982\u4e0b\uff1a
public int hashCode() {
int h = hash;
if (h == 0) {
int off = offset;
char val[] = value;
int len = count;

for (int i = 0; i < len; i++) {
h = 31*h + val[off++];
}
hash = h;
}
return h;
}
\u89e3\u91ca\u4e00\u4e0b\u8fd9\u4e2a\u7a0b\u5e8f\uff08String\u7684api\u4e2d\u5199\u5230\uff09\uff1a
s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
\u4f7f\u7528 int \u7b97\u6cd5\uff0c\u8fd9\u91cc s[i] \u662f\u5b57\u7b26\u4e32\u7684\u7b2c i \u4e2a\u5b57\u7b26\uff0cn \u662f\u5b57\u7b26\u4e32\u7684\u957f\u5ea6\uff0c^ \u8868\u793a\u6c42\u5e42\u3002\uff08\u7a7a\u5b57\u7b26\u4e32\u7684\u54c8\u5e0c\u7801\u4e3a 0\u3002\uff09

3.\u8fd9\u91cc\u6211\u4eec\u9996\u5148\u8981\u660e\u767d\u4e00\u4e2a\u95ee\u9898\uff1a
equals()\u76f8\u7b49\u7684\u4e24\u4e2a\u5bf9\u8c61\uff0chashcode()\u4e00\u5b9a\u76f8\u7b49\uff1b
equals\uff08\uff09\u4e0d\u76f8\u7b49\u7684\u4e24\u4e2a\u5bf9\u8c61\uff0c\u5374\u5e76\u4e0d\u80fd\u8bc1\u660e\u4ed6\u4eec\u7684hashcode()\u4e0d\u76f8\u7b49\u3002\u6362\u53e5\u8bdd\u8bf4\uff0cequals()\u65b9\u6cd5\u4e0d\u76f8\u7b49\u7684\u4e24\u4e2a\u5bf9\u8c61\uff0chashcode()\u6709\u53ef\u80fd\u76f8\u7b49\u3002\uff08\u6211\u7684\u7406\u89e3\u662f\u7531\u4e8e\u54c8\u5e0c\u7801\u5728\u751f\u6210\u7684\u65f6\u5019\u4ea7\u751f\u51b2\u7a81\u9020\u6210\u7684\uff09\u3002
\u53cd\u8fc7\u6765\uff1ahashcode()\u4e0d\u7b49\uff0c\u4e00\u5b9a\u80fd\u63a8\u51faequals()\u4e5f\u4e0d\u7b49\uff1bhashcode()\u76f8\u7b49\uff0cequals()\u53ef\u80fd\u76f8\u7b49\uff0c\u4e5f\u53ef\u80fd\u4e0d\u7b49\u3002\u89e3\u91ca\u4e0b\u7b2c3\u70b9\u7684\u4f7f\u7528\u8303\u56f4\uff0c\u6211\u7684\u7406\u89e3\u662f\u5728object\u3001String\u7b49\u7c7b\u4e2d\u90fd\u80fd\u4f7f\u7528\u3002\u5728object\u7c7b\u4e2d\uff0chashcode()\u65b9\u6cd5\u662f\u672c\u5730\u65b9\u6cd5\uff0c\u8fd4\u56de\u7684\u662f\u5bf9\u8c61\u7684\u5730\u5740\u503c\uff0c\u800cobject\u7c7b\u4e2d\u7684equals()\u65b9\u6cd5\u6bd4\u8f83\u7684\u4e5f\u662f\u4e24\u4e2a\u5bf9\u8c61\u7684\u5730\u5740\u503c\uff0c\u5982\u679cequals()\u76f8\u7b49\uff0c\u8bf4\u660e\u4e24\u4e2a\u5bf9\u8c61\u5730\u5740\u503c\u4e5f\u76f8\u7b49\uff0c\u5f53\u7136hashcode()\u4e5f\u5c31\u76f8\u7b49\u4e86\uff1b\u5728String\u7c7b\u4e2d\uff0cequals()\u8fd4\u56de\u7684\u662f\u4e24\u4e2a\u5bf9\u8c61\u5185\u5bb9\u7684\u6bd4\u8f83\uff0c\u5f53\u4e24\u4e2a\u5bf9\u8c61\u5185\u5bb9\u76f8\u7b49\u65f6\uff0c
Hashcode()\u65b9\u6cd5\u6839\u636eString\u7c7b\u7684\u91cd\u5199\uff08\u7b2c2\u70b9\u91cc\u9762\u5df2\u7ecf\u5206\u6790\u4e86\uff09\u4ee3\u7801\u7684\u5206\u6790\uff0c\u4e5f\u53ef\u77e5\u9053hashcode()\u8fd4\u56de\u7ed3\u679c\u4e5f\u4f1a\u76f8\u7b49\u3002\u4ee5\u6b64\u7c7b\u63a8\uff0c\u53ef\u4ee5\u77e5\u9053Integer\u3001Double\u7b49\u5c01\u88c5\u7c7b\u4e2d\u7ecf\u8fc7\u91cd\u5199\u7684equals()\u548chashcode()\u65b9\u6cd5\u4e5f\u540c\u6837\u9002\u5408\u4e8e\u8fd9\u4e2a\u539f\u5219\u3002\u5f53\u7136\u6ca1\u6709\u7ecf\u8fc7\u91cd\u5199\u7684\u7c7b\uff0c\u5728\u7ee7\u627f\u4e86object\u7c7b\u7684equals()\u548chashcode()\u65b9\u6cd5\u540e\uff0c\u4e5f\u4f1a\u9075\u5b88\u8fd9\u4e2a\u539f\u5219\u3002

4.\u8c08\u5230hashcode()\u548cequals()\u5c31\u4e0d\u80fd\u4e0d\u8bf4\u5230hashset,hashmap,hashtable\u4e2d\u7684\u4f7f\u7528\uff0c\u5177\u4f53\u662f\u600e\u6837\u5462\uff0c\u8bf7\u770b\u5982\u4e0b\u5206\u6790\uff1a
Hashset\u662f\u7ee7\u627fSet\u63a5\u53e3\uff0cSet\u63a5\u53e3\u53c8\u5b9e\u73b0Collection\u63a5\u53e3\uff0c\u8fd9\u662f\u5c42\u6b21\u5173\u7cfb\u3002\u90a3\u4e48hashset\u662f\u6839\u636e\u4ec0\u4e48\u539f\u7406\u6765\u5b58\u53d6\u5bf9\u8c61\u7684\u5462\uff1f
\u5728hashset\u4e2d\u4e0d\u5141\u8bb8\u51fa\u73b0\u91cd\u590d\u5bf9\u8c61\uff0c\u5143\u7d20\u7684\u4f4d\u7f6e\u4e5f\u662f\u4e0d\u786e\u5b9a\u7684\u3002\u5728hashset\u4e2d\u53c8\u662f\u600e\u6837\u5224\u5b9a\u5143\u7d20\u662f\u5426\u91cd\u590d\u7684\u5462\uff1f\u8fd9\u5c31\u662f\u95ee\u9898\u7684\u5173\u952e\u6240\u5728\uff0c\u7ecf\u8fc7\u4e00\u4e0b\u5348\u7684\u67e5\u8be2\u6c42\u8bc1\u7ec8\u4e8e\u83b7\u5f97\u4e86\u4e00\u70b9\u542f\u793a\uff0c\u548c\u5927\u5bb6\u5206\u4eab\u4e00\u4e0b\uff0c\u5728java\u7684\u96c6\u5408\u4e2d\uff0c\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u662f\u5426\u76f8\u7b49\u7684\u89c4\u5219\u662f\uff1a
1)\uff0c\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u7684hashCode\u662f\u5426\u76f8\u7b49
\u5982\u679c\u4e0d\u76f8\u7b49\uff0c\u8ba4\u4e3a\u4e24\u4e2a\u5bf9\u8c61\u4e5f\u4e0d\u76f8\u7b49\uff0c\u5b8c\u6bd5
\u5982\u679c\u76f8\u7b49\uff0c\u8f6c\u51652)
\uff08\u8fd9\u4e00\u70b9\u53ea\u662f\u4e3a\u4e86\u63d0\u9ad8\u5b58\u50a8\u6548\u7387\u800c\u8981\u6c42\u7684\uff0c\u5176\u5b9e\u7406\u8bba\u4e0a\u6ca1\u6709\u4e5f\u53ef\u4ee5\uff0c\u4f46\u5982\u679c\u6ca1\u6709\uff0c\u5b9e\u9645\u4f7f\u7528\u65f6\u6548\u7387\u4f1a\u5927\u5927\u964d\u4f4e\uff0c\u6240\u4ee5\u6211\u4eec\u8fd9\u91cc\u5c06\u5176\u505a\u4e3a\u5fc5\u9700\u7684\u3002\u540e\u9762\u4f1a\u91cd\u70b9\u8bb2\u5230\u8fd9\u4e2a\u95ee\u9898\u3002\uff09
2)\uff0c\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u7528equals\u8fd0\u7b97\u662f\u5426\u76f8\u7b49
\u5982\u679c\u4e0d\u76f8\u7b49\uff0c\u8ba4\u4e3a\u4e24\u4e2a\u5bf9\u8c61\u4e5f\u4e0d\u76f8\u7b49
\u5982\u679c\u76f8\u7b49\uff0c\u8ba4\u4e3a\u4e24\u4e2a\u5bf9\u8c61\u76f8\u7b49\uff08equals()\u662f\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u662f\u5426\u76f8\u7b49\u7684\u5173\u952e\uff09
\u4e3a\u4ec0\u4e48\u662f\u4e24\u6761\u51c6\u5219\uff0c\u96be\u9053\u7528\u7b2c\u4e00\u6761\u4e0d\u884c\u5417\uff1f\u4e0d\u884c\uff0c\u56e0\u4e3a\u524d\u9762\u5df2\u7ecf\u8bf4\u4e86\uff0chashcode()\u76f8\u7b49\u65f6\uff0cequals()\u65b9\u6cd5\u4e5f\u53ef\u80fd\u4e0d\u7b49\uff0c\u6240\u4ee5\u5fc5\u987b\u7528\u7b2c2\u6761\u51c6\u5219\u8fdb\u884c\u9650\u5236\uff0c\u624d\u80fd\u4fdd\u8bc1\u52a0\u5165\u7684\u4e3a\u975e\u91cd\u590d\u5143\u7d20\u3002
\u6bd4\u5982\u4e0b\u9762\u7684\u4ee3\u7801\uff1a

public static void main(String args[]){
String s1=new String("zhaoxudong");
String s2=new String("zhaoxudong");
System.out.println(s1==s2);//false
System.out.println(s1.equals(s2));//true
System.out.println(s1.hashCode());//s1.hashcode()\u7b49\u4e8es2.hashcode()
System.out.println(s2.hashCode());
Set hashset=new HashSet();
hashset.add(s1);
hashset.add(s2);

Iterator it=hashset.iterator();
while(it.hasNext())
{
System.out.println(it.next());
}
\u6700\u540e\u5728while\u5faa\u73af\u7684\u65f6\u5019\u53ea\u6253\u5370\u51fa\u4e86\u4e00\u4e2a\u201dzhaoxudong\u201d\u3002
\u8f93\u51fa\u7ed3\u679c\u4e3a\uff1afalse
true
-967303459
-967303459
\u8fd9\u662f\u56e0\u4e3aString\u7c7b\u5df2\u7ecf\u91cd\u5199\u4e86equals()\u65b9\u6cd5\u548chashcode()\u65b9\u6cd5\uff0c\u6240\u4ee5\u5728\u6839\u636e\u4e0a\u9762\u7684\u7b2c1.2\u6761\u539f\u5219\u5224\u5b9a\u65f6\uff0chashset\u8ba4\u4e3a\u5b83\u4eec\u662f\u76f8\u7b49\u7684\u5bf9\u8c61\uff0c\u8fdb\u884c\u4e86\u91cd\u590d\u6dfb\u52a0\u3002
\u4f46\u662f\u770b\u4e0b\u9762\u7684\u7a0b\u5e8f\uff1a
import java.util.*;
public class HashSetTest
{
public static void main(String[] args)
{
HashSet hs=new HashSet();
hs.add(new Student(1,"zhangsan"));
hs.add(new Student(2,"lisi"));
hs.add(new Student(3,"wangwu"));
hs.add(new Student(1,"zhangsan"));

Iterator it=hs.iterator();
while(it.hasNext())
{
System.out.println(it.next());
}
}
}
class Student
{
int num;
String name;
Student(int num,String name)
{
this.num=num;
this.name=name;
}
public String toString()
{
return num+":"+name;
}
}
\u8f93\u51fa\u7ed3\u679c\u4e3a\uff1a
1:zhangsan
1:zhangsan
3:wangwu
2:lisi
\u95ee\u9898\u51fa\u73b0\u4e86\uff0c\u4e3a\u4ec0\u4e48hashset\u6dfb\u52a0\u4e86\u76f8\u7b49\u7684\u5143\u7d20\u5462\uff0c\u8fd9\u662f\u4e0d\u662f\u548chashset\u7684\u539f\u5219\u8fdd\u80cc\u4e86\u5462\uff1f\u56de\u7b54\u662f\uff1a\u6ca1\u6709
\u56e0\u4e3a\u5728\u6839\u636ehashcode()\u5bf9\u4e24\u6b21\u5efa\u7acb\u7684new Student(1,"zhangsan")\u5bf9\u8c61\u8fdb\u884c\u6bd4\u8f83\u65f6\uff0c\u751f\u6210\u7684\u662f\u4e0d\u540c\u7684\u54c8\u5e0c\u7801\u503c\uff0c\u6240\u4ee5hashset\u628a\u4ed6\u5f53\u4f5c\u4e0d\u540c\u7684\u5bf9\u8c61\u5bf9\u5f85\u4e86\uff0c\u5f53\u7136\u6b64\u65f6\u7684equals()\u65b9\u6cd5\u8fd4\u56de\u7684\u503c\u4e5f\u4e0d\u7b49\uff08\u8fd9\u4e2a\u4e0d\u7528\u89e3\u91ca\u4e86\u5427\uff09\u3002\u90a3\u4e48\u4e3a\u4ec0\u4e48\u4f1a\u751f\u6210\u4e0d\u540c\u7684\u54c8\u5e0c\u7801\u503c\u5462\uff1f\u4e0a\u9762\u6211\u4eec\u5728\u6bd4\u8f83s1\u548cs2\u7684\u65f6\u5019\u4e0d\u662f\u751f\u6210\u4e86\u540c\u6837\u7684\u54c8\u5e0c\u7801\u5417\uff1f\u539f\u56e0\u5c31\u5728\u4e8e\u6211\u4eec\u81ea\u5df1\u5199\u7684Student\u7c7b\u5e76\u6ca1\u6709\u91cd\u65b0\u81ea\u5df1\u7684hashcode()\u548cequals()\u65b9\u6cd5\uff0c\u6240\u4ee5\u5728\u6bd4\u8f83\u65f6\uff0c\u662f\u7ee7\u627f\u7684object\u7c7b\u4e2d\u7684hashcode()\u65b9\u6cd5\uff0c\u5475\u5475\uff0c\u5404\u4f4d\u8fd8\u8bb0\u5f97object\u7c7b\u4e2d\u7684hashcode()\u65b9\u6cd5\u6bd4\u8f83\u7684\u662f\u4ec0\u4e48\u5427\uff01\uff01
\u5b83\u662f\u4e00\u4e2a\u672c\u5730\u65b9\u6cd5\uff0c\u6bd4\u8f83\u7684\u662f\u5bf9\u8c61\u7684\u5730\u5740\uff08\u5f15\u7528\u5730\u5740\uff09\uff0c\u4f7f\u7528new\u65b9\u6cd5\u521b\u5efa\u5bf9\u8c61\uff0c\u4e24\u6b21\u751f\u6210\u7684\u5f53\u7136\u662f\u4e0d\u540c\u7684\u5bf9\u8c61\u4e86\uff08\u8fd9\u4e2a\u5927\u5bb6\u90fd\u80fd\u7406\u89e3\u5427\u3002\u3002\u3002\uff09\uff0c\u9020\u6210\u7684\u7ed3\u679c\u5c31\u662f\u4e24\u4e2a\u5bf9\u8c61\u7684hashcode()\u8fd4\u56de\u7684\u503c\u4e0d\u4e00\u6837\u3002\u6240\u4ee5\u6839\u636e\u7b2c\u4e00\u4e2a\u51c6\u5219\uff0chashset\u4f1a\u628a\u5b83\u4eec\u5f53\u4f5c\u4e0d\u540c\u7684\u5bf9\u8c61\u5bf9\u5f85\uff0c\u81ea\u7136\u4e5f\u7528\u4e0d\u7740\u7b2c\u4e8c\u4e2a\u51c6\u5219\u8fdb\u884c\u5224\u5b9a\u4e86\u3002\u90a3\u4e48\u600e\u4e48\u89e3\u51b3\u8fd9\u4e2a\u95ee\u9898\u5462\uff1f\uff1f
\u7b54\u6848\u662f\uff1a\u5728Student\u7c7b\u4e2d\u91cd\u65b0hashcode()\u548cequals()\u65b9\u6cd5\u3002
\u4f8b\u5982\uff1a
class Student
{
int num;
String name;
Student(int num,String name)
{
this.num=num;
this.name=name;
}
public int hashCode()
{
return num*name.hashCode();
}
public boolean equals(Object o)
{
Student s=(Student)o;
return num==s.num && name.equals(s.name);
}
public String toString()
{
return num+":"+name;
}
}
\u6839\u636e\u91cd\u5199\u7684\u65b9\u6cd5\uff0c\u5373\u4fbf\u4e24\u6b21\u8c03\u7528\u4e86new Student(1,"zhangsan")\uff0c\u6211\u4eec\u5728\u83b7\u5f97\u5bf9\u8c61\u7684\u54c8\u5e0c\u7801\u65f6\uff0c\u6839\u636e\u91cd\u5199\u7684\u65b9\u6cd5hashcode()\uff0c\u83b7\u5f97\u7684\u54c8\u5e0c\u7801\u80af\u5b9a\u662f\u4e00\u6837\u7684\uff08\u8fd9\u4e00\u70b9\u5e94\u8be5\u6ca1\u6709\u7591\u95ee\u5427\uff09\u3002
\u5f53\u7136\u6839\u636eequals()\u65b9\u6cd5\u6211\u4eec\u4e5f\u53ef\u5224\u65ad\u662f\u76f8\u540c\u7684\u3002\u6240\u4ee5\u5728\u5411hashset\u96c6\u5408\u4e2d\u6dfb\u52a0\u65f6\u628a\u5b83\u4eec\u5f53\u4f5c\u91cd\u590d\u5143\u7d20\u770b\u5f85\u4e86\u3002\u6240\u4ee5\u8fd0\u884c\u4fee\u6539\u540e\u7684\u7a0b\u5e8f\u65f6\uff0c\u6211\u4eec\u4f1a\u53d1\u73b0\u8fd0\u884c\u7ed3\u679c\u662f\uff1a
1:zhangsan
3:wangwu
2:lisi
\u53ef\u4ee5\u770b\u5230\u91cd\u590d\u5143\u7d20\u7684\u95ee\u9898\u5df2\u7ecf\u6d88\u9664\u3002
\u5173\u4e8e\u5728hibernate\u7684pojo\u7c7b\u4e2d\uff0c\u91cd\u65b0equals()\u548chashcode()\u7684\u95ee\u9898\uff1a
1)\uff0c\u91cd\u70b9\u662fequals\uff0c\u91cd\u5199hashCode\u53ea\u662f\u6280\u672f\u8981\u6c42\uff08\u4e3a\u4e86\u63d0\u9ad8\u6548\u7387\uff09
2)\uff0c\u4e3a\u4ec0\u4e48\u8981\u91cd\u5199equals\u5462\uff0c\u56e0\u4e3a\u5728java\u7684\u96c6\u5408\u6846\u67b6\u4e2d\uff0c\u662f\u901a\u8fc7equals\u6765\u5224\u65ad\u4e24\u4e2a\u5bf9\u8c61\u662f\u5426\u76f8\u7b49\u7684
3)\uff0c\u5728hibernate\u4e2d\uff0c\u7ecf\u5e38\u4f7f\u7528set\u96c6\u5408\u6765\u4fdd\u5b58\u76f8\u5173\u5bf9\u8c61\uff0c\u800cset\u96c6\u5408\u662f\u4e0d\u5141\u8bb8\u91cd\u590d\u7684\u3002\u6211\u4eec\u518d\u6765\u8c08\u8c08\u524d\u9762\u63d0\u5230\u5728\u5411hashset\u96c6\u5408\u4e2d\u6dfb\u52a0\u5143\u7d20\u65f6,\u600e\u6837\u5224\u65ad\u5bf9\u8c61\u662f\u5426\u76f8\u540c\u7684\u51c6\u5219\uff0c\u524d\u9762\u8bf4\u4e86\u4e24\u6761\uff0c\u5176\u5b9e\u53ea\u8981\u91cd\u5199equals()\u8fd9\u4e00\u6761\u4e5f\u53ef\u4ee5\u3002
\u4f46\u5f53hashset\u4e2d\u5143\u7d20\u6bd4\u8f83\u591a\u65f6\uff0c\u6216\u8005\u662f\u91cd\u5199\u7684equals()\u65b9\u6cd5\u6bd4\u8f83\u590d\u6742\u65f6\uff0c\u6211\u4eec\u53ea\u7528equals()\u65b9\u6cd5\u8fdb\u884c\u6bd4\u8f83\u5224\u65ad\uff0c\u6548\u7387\u4e5f\u4f1a\u975e\u5e38\u4f4e\uff0c\u6240\u4ee5\u5f15\u5165\u4e86hashcode()\u8fd9\u4e2a\u65b9\u6cd5\uff0c\u53ea\u662f\u4e3a\u4e86\u63d0\u9ad8\u6548\u7387\uff0c\u4f46\u662f\u6211\u89c9\u5f97\u8fd9\u662f\u975e\u5e38\u6709\u5fc5\u8981\u7684\uff08\u6240\u4ee5\u6211\u4eec\u5728\u524d\u9762\u4ee5\u4e24\u6761\u51c6\u5219\u6765\u8fdb\u884chashset\u7684\u5143\u7d20\u662f\u5426\u91cd\u590d\u7684\u5224\u65ad\uff09\u3002
\u6bd4\u5982\u53ef\u4ee5\u8fd9\u6837\u5199\uff1a
public int hashCode(){
return 1;}//\u7b49\u4ef7\u4e8ehashcode\u65e0\u6548
\u8fd9\u6837\u505a\u7684\u6548\u679c\u5c31\u662f\u5728\u6bd4\u8f83\u54c8\u5e0c\u7801\u7684\u65f6\u5019\u4e0d\u80fd\u8fdb\u884c\u5224\u65ad\uff0c\u56e0\u4e3a\u6bcf\u4e2a\u5bf9\u8c61\u8fd4\u56de\u7684\u54c8\u5e0c\u7801\u90fd\u662f1\uff0c\u6bcf\u6b21\u90fd\u5fc5\u987b\u8981\u7ecf\u8fc7\u6bd4\u8f83equals()\u65b9\u6cd5\u540e\u624d\u80fd\u8fdb\u884c\u5224\u65ad\u662f\u5426\u91cd\u590d\uff0c\u8fd9\u5f53\u7136\u4f1a\u5f15\u8d77\u6548\u7387\u7684\u5927\u5927\u964d\u4f4e\u3002
\u6211\u6709\u4e00\u4e2a\u95ee\u9898\uff0c\u5982\u679c\u50cf\u524d\u9762\u63d0\u5230\u7684\u5728hashset\u4e2d\u5224\u65ad\u5143\u7d20\u662f\u5426\u91cd\u590d\u7684\u5fc5\u8981\u65b9\u6cd5\u662fequals()\u65b9\u6cd5\uff08\u6839\u636e\u7f51\u4e0a\u627e\u5230\u7684\u89c2\u70b9\uff09\uff0c\u4f46\u662f\u8fd9\u91cc\u5e76\u6ca1\u6709\u6d89\u53ca\u5230\u5173\u4e8e\u54c8\u5e0c\u8868\u7684\u95ee\u9898\uff0c\u53ef\u662f\u8fd9\u4e2a\u96c6\u5408\u5374\u53ebhashset\uff0c\u8fd9\u662f\u4e3a\u4ec0\u4e48\uff1f\uff1f
\u6211\u60f3\uff0c\u5728hashmap,hashtable\u4e2d\u7684\u5b58\u50a8\u64cd\u4f5c\uff0c\u4f9d\u7136\u9075\u5b88\u4e0a\u9762\u7684\u51c6\u5219\u3002\u6240\u4ee5\u8fd9\u91cc\u4e0d\u518d\u591a\u8bf4\u3002\u8fd9\u4e9b\u662f\u4eca\u5929\u770b\u4e66\uff0c\u7f51\u4e0a\u67e5\u8be2\u8d44\u6599\uff0c\u81ea\u5df1\u603b\u7ed3\u51fa\u6765\u7684\uff0c\u90e8\u5206\u4ee3\u7801\u548c\u8bed\u8a00\u662f\u5f15\u8ff0\uff0c\u4f46\u662f\u5343\u771f\u4e07\u786e\u662f\u81ea\u5df1\u603b\u7ed3\u51fa\u6765\u7684\u3002\u6709\u9519\u8bef\u4e4b\u5904\u548c\u4e0d\u8be6\u7ec6\u4e0d\u6e05\u695a\u7684\u5730\u65b9\u8fd8\u8bf7\u5927\u5bb6\u6307\u51fa\uff0c\u6211\u4e5f\u662f\u521d\u5b66\u8005\uff0c\u6240\u4ee5\u96be\u514d\u4f1a\u6709\u9519\u8bef\u7684\u5730\u65b9\uff0c\u5e0c\u671b\u5927\u5bb6\u5171\u540c\u8ba8\u8bba\u3002

hashcode相等或者不相等,和它的存取效率是没有关系的

如果不同的key计算后得到的hashcod是一样,这就产生碰撞了,可以理解为冲突了。java里面是有解决碰撞的方法的,

自己试下不就知道了

  • Java涓璈ashMap鍜孒ashtable涔嬮棿鐨勫尯鍒
    绛旓細Hashtable鍜HashMap绫绘湁涓変釜閲嶈鐨勪笉鍚屼箣澶.绗竴涓笉鍚屼富瑕佹槸鍘嗗彶鍘熷洜.Hashtable鏄熀浜庨檲鏃х殑Dictionary绫荤殑,HashMap鏄Java 1.2寮曡繘鐨凪ap鎺ュ彛鐨勪竴涓疄鐜.涔熻鏈閲嶈鐨勪笉鍚屾槸Hashtable鐨勬柟娉曟槸鍚屾鐨,鑰孒ashMap鐨勬柟娉曚笉鏄.杩欏氨鎰忓懗鐫,铏界劧浣犲彲浠ヤ笉鐢ㄩ噰鍙栦换浣曠壒娈婄殑琛屼负灏卞彲浠ュ湪涓涓绾跨▼鐨勫簲鐢ㄧ▼搴忎腑...
  • java 涓轰粈涔堜娇鐢hashmap
    绛旓細鑰屽浜庨偅浜涘湪缂栬瘧鏃舵棤娉曠‘瀹氬叿浣撶殑鏁伴噺鍗冲姩鎬佸闀跨殑鏁版嵁锛屽氨闇瑕佺敤鍒Java闆嗗悎绫讳簡銆傚浜嶢rrayList 鍜 LinkedList锛岃繕鏈 Vector瀹冧滑閮芥湁涓浜涚己鐐癸紝瑕佷箞鎻掑叆鍒犻櫎閫熷害鎱佽涔堝氨鏄亶鍘嗛熷害鎱傞偅涔堟湁娌℃湁涓绉嶆彃鍏ャ佸垹闄ゃ侀亶鍘嗛兘姣旇緝涓嶉敊鐨勯泦鍚堢被鍛紵浜庢槸 HashMap 灏卞嚭鐜颁簡銆侶ashMap 鏄竴涓暎鍒楄〃锛屽畠瀛樺偍鐨勬槸...
  • java 鍏充簬HashMap
    绛旓細涓嶇敤杩欎箞澶嶆潅锛屾渶绠鍗曠殑鍋氭硶鏄綘鐨刴ap 鎹㈡垚 TreeMap锛宻ort閮戒笉鐢ㄥ仛锛岀洿鎺ラ亶鍘唌ap灏卞ソ锛屽凡缁忔帓濂藉簭浜嗐 map1锛屼笉鐢ㄣ傚鏋滀綘涓瀹氭兂鐢Hashmap锛岄偅涔堜篃鍙互銆俵ist.add(c[i]) 鏀规垚 list.add(a[map.get(c[i])]) 灏卞彲浠ヤ簡銆俶ap.get(c[i])灏辨槸鍒╃敤c[i]涓殑鍊兼壘鍒癿ap涓瓨鐨勬爣鍙枫
  • 鍦JAVA涓璏ap鍜HashMap鏈変粈涔堝尯鍒
    绛旓細鑰HashMap鏄Java1.2寮曡繘鐨凪ap interface鐨勪竴涓疄鐜般傛渶澶х殑涓嶅悓鏄紝Hashtable鐨勬柟娉曟槸Synchronize鐨勶紝鑰孒ashMap涓嶆槸锛屽湪澶氫釜绾跨▼璁块棶Hashtable鏃讹紝涓嶉渶瑕佽嚜宸变负瀹冪殑鏂规硶瀹炵幇鍚屾锛岃孒ashMap 灏卞繀椤讳负涔嬫彁渚涘鍚屾銆侶ashtable鍜孒ashMap閲囩敤鐨刪ash/rehash绠楁硶閮藉ぇ姒備竴鏍凤紝鎵浠ユц兘涓嶄細鏈夊緢澶х殑宸紓銆
  • HashMap鍜孒ashtable鍖哄埆?
    绛旓細涓よ呮渶涓昏鐨勫尯鍒湪浜巋ashtable鏄嚎绋嬪畨鍏紝鑰hashmap鍒欓潪绾跨▼瀹夊叏銆
  • java8 hashmap 涓轰粈涔堜笉瓒64 鎵╁?涓轰粈涔堥摼琛ㄩ暱搴﹀畾涔夋槸8?
    绛旓細鍥犱负澶т簬threshold鎵浠ヨ鎵╁锛屽墠鎻愭槸浣犳病鏈夋寚瀹氾紝閾捐〃闀垮害澶т簬8浼氳浆鎹负绾㈤粦鏍戯紝涓轰簡鎻愰珮鏌ユ壘閫熷害
  • java涓璈ashMap鐨勪娇鐢,鎴戜箣鍓嶆湁瀹氫箟涓涓狿erson绫,鍙槸瀹氫箟浜嗕袱涓睘鎬ц屽凡...
    绛旓細entrySet鏂规硶杩斿洖鐨勬槸涓涓槧灏勫叧绯荤殑 set 瑙嗗浘锛孾001=Person@8813f2] key001鏄犲皠Person瀵硅薄鍚庨潰鐨勭被浼间簬hashcode涔嬬被鐨勶紝浣犺繖閲屾兂杈撳嚭鐨勬槸浠涔 锛屽鏋滀綘鍙槸鎯宠緭鍑篜erson瀵硅薄鐨勮瘽鐢 System.out.println(map.get("001"));杩欐牱灏辫浜嗭紝濡傛灉浣犲凡缁忓湪Person閲岄潰閲嶅啓浜唗oString鏂规硶鐨勮瘽缁撴灉搴旇灏辨槸浣犻噸鍐欑殑...
  • 鍏充簬java涓璈ashMap鐨刾ut鏂规硶涓殑鍙傛暟闂
    绛旓細HashMap 鏄互 閿煎 褰㈠紡 淇濆瓨 鏁版嵁鐨,绠鍗曞舰瀹 鍙互 鐞嗚В涓 瀛﹀彿(key),瀛﹀憳(value)object 绫诲瀷鏄java涓 闄や簡鍩烘湰鏁版嵁绫诲瀷浠ュ鐨勮秴绫,涔熷氨鏄鍙浣犳斁鐨勫璞$被鍨嬬洿鎺ユ垨闂存帴缁ф壙object,灏卞彲浠ヨ鍏ey鎴杤alue涓 濡傛灉浣跨敤娉涘瀷 鐨勮瘽 閿兼槸鍥哄畾鐨,value涓嶉渶瑕佸己鍒惰浆鎹 ...
  • java1.8 hashmap鍦ㄦ墿瀹圭殑杩囩▼涓,鏂板鐨勬暟鎹槸瀛樺叆鏂鐨map涓繕鏄瓨鍏ユ棫...
    绛旓細map鍜宎rraylist鐨勬墿瀹逛笉涓鏍 浣跨敤鐨勮繕鏄師鏉ョ殑 鍙槸瀹归噺鍙樹簡 鐒跺悗閲嶆柊璁$畻浠鐨刪ashcod鍊 娌℃湁鏂版棫涔嬪垎 閮芥槸閭d竴涓
  • java涓璈ashMap鍜孒ashTable闈㈣瘯棰橀棶棰,涓轰粈涔坔ashmap鏄睘浜庡紓姝ョ殑鍛?骞...
    绛旓細Hashtable鏄釜杩囨椂鐨勯泦鍚堢被锛屽瓨鍦ㄤ簬Java API涓緢涔呬簡銆傚湪Java 4涓閲嶅啓浜嗭紝瀹炵幇浜哅ap鎺ュ彛锛屾墍浠ヨ嚜姝や互鍚庝篃鎴愪簡Java闆嗗悎妗嗘灦涓殑涓閮ㄥ垎銆侶ashtable鍜HashMap鍦↗ava闈㈣瘯涓浉褰撳鏄撹闂埌锛岀敋鑷虫垚涓轰簡闆嗗悎妗嗘灦闈㈣瘯棰樹腑鏈甯歌鑰冪殑闂锛屾墍浠ュ湪鍙傚姞浠讳綍Java闈㈣瘯涔嬪墠锛岄兘涓嶈蹇樹簡鍑嗗杩欎竴棰樸傝繖绡囨枃绔犱腑锛...
  • 扩展阅读:java.52emu.cn ... javascript substring ... javascript innerhtml ... javascript onclick ... javascript免费网站 ... java bitmap ... java properties ... java serializable ... java@override ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网