2014-08-27 52 views
-7
檢索值
HashMap details = new HashMap(); 
details = taskManager.getFormDetails(appSessionURI, accessToken); 
System.out.println("Details :" + details); 

輸出:在HashMap中

Details :{fileSize=-1590179396, fileId=38418026, fileHref=v1pre3/files/38418026, fileName=sorted_S1.bam, refgene=mm8, appSessionID=4646657}

這裏是我的問題。我想從Details中檢索fileIdrefgene。我該怎麼做?

+0

更好:

你的代碼進行重構如下。 – 2014-08-27 08:39:02

+1

@贊你知道hashmaps是如何使用的嗎? – 2014-08-27 08:39:53

+0

你看過[JavaDoc for HashMap](http://docs.oracle.com/javase/7/docs/api/java/util/HashMap.html)嗎? – Keppil 2014-08-27 08:41:19

回答

0

A Map是一個鍵值對,即一個值與一個鍵關聯。如果你提供了一個用於由該函數返回的HashMap中getFormDetail方法,或者至少類

Map<String, Object> details = taskManager.getFormDetails(appSessionURI, accessToken); 
//System.out.println("Details :" + details); 
String fileName = (String)details.get("fileName"); 
String refGene = (String)details.get("refgene"); 
+0

謝謝你這麼多!它正在工作。 Yeahhhh! – Zan 2014-08-27 09:04:04

+0

我很高興有幫助。您必須首先**瞭解集合的數據結構,例如'List','Set','Map'和數組,然後根據您的理解進行一些編碼,然後嘗試在此處詢問。這是其他開發人員試圖在評論中向您展示的內容。 – 2014-08-27 09:11:53

+0

是的,我想了解數據結構也。無論如何,感謝您的幫助。 – Zan 2014-08-27 09:14:59

0

首先,代碼System.out.println("Details :" + details);只需使用KeyValue toString()方法打印您的HashMap內容。你需要知道關鍵字「fileId」和「refgene」的對象類型。我假設你認爲它是一個字符串,但它可以是任何定製實現的方法的任何對象。如果您知道它是一個字符串,您可以通過使用details.get("refgene")details.get("fileId")

+0

謝謝,你的建議也沒有錯=) – Zan 2014-08-27 09:05:22