因為在 前一篇 ImageLoader 需要使用到 Auth token 來下載某個用戶的檔案的縮圖,所以需要透過 image loader 的 getExtraForDownloader 傳進 extra, extra 是一個 object, 傳進去前是一個dictionary (map 或 entry) 傳進去後,需要把把一個 entrySet 拆開來或直接轉換型別。
相關文章:
getExtraForDownloader
https://github.com/nostra13/Android-Universal-Image-Loader/blob/4c728792d73e964f6d8501f742cda57dd56731c6/library/src/main/java/com/nostra13/universalimageloader/core/decode/BaseImageDecoder.java
Map<String, String> map = new HashMap<String, String>(); map.put( "AA" , "aa" ); map.put( "BB" , "bb" ); map.put( "CC" , "cc" ); map.put( "DD" , "dd" ); // 返回此映射中包含的映射關係的Set集合 Set<Entry<String, String>> set = map.entrySet(); for (Entry<String, String> entry: set) { //每個Entry就是map中一個key及其它對應的value被重新封裝的對象 System.out.println(entry.getKey() + " " + entry.getValue()); }
Java introspection: object to map
http://stackoverflow.com/questions/6796187/java-introspection-object-to-map
public Map<String, Object> getMap(Object o) { Map<String, Object> result = new HashMap<String, Object>(); Field[] declaredFields = o.getClass().getDeclaredFields(); for (Field field : declaredFields) { result.put(field.getName(), field.get(o)); } return result; }