本文实例讲述了java使用hashMap缓存保存数据的方法。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
private static final HashMap<Long, XXX> sCache = new HashMap<Long, XXX>();
private static int sId = - 1 ;
public static void initAlbumArtCache() {
try {
//。。。
if (id != sId) {
clearCache();
sId = id;
}
} catch (RemoteException e) {
e.printStackTrace();
}
}
public static void clearCache() {
synchronized (sCache) {
sCache.clear();
}
}
public static XXX getCachedXXX( long Index, BitmapDrawable defaultBitmap) {
XXX d = null ;
synchronized (sCache) {
d = sCache.get(Index);
}
if (d == null ) {
//。。。
synchronized (sArtCache) {
// the cache may have changed since we checked
XXX value = sCache.get(Index);
if (value == null ) {
sCache.put(Index, d);
} else {
d = value;
}
}
}
return d;
}
|
希望本文所述对大家java程序设计有所帮助。