我需要存儲不同類型的數據在一個相同的「數組」關聯(或ID)在我的Android應用程序,我想知道是否有辦法創建HashMaps (或等效的動態數組),它有多個內容列。像這樣的例子。動態數組與更多的一列
HashMap<Integer, String, LatLng, Marker> myHashMap = new HashMap<Integer, String, LatLng, Marker>();
在此先感謝您的任何想法。
我需要存儲不同類型的數據在一個相同的「數組」關聯(或ID)在我的Android應用程序,我想知道是否有辦法創建HashMaps (或等效的動態數組),它有多個內容列。像這樣的例子。動態數組與更多的一列
HashMap<Integer, String, LatLng, Marker> myHashMap = new HashMap<Integer, String, LatLng, Marker>();
在此先感謝您的任何想法。
private class Row {
public Integer i;
public String s;
public LatLng ll;
public Row(Integer i, String s, LatLng ll) {
this.i = i;
this.s = s;
this.ll = ll;
}
}
List<Row> rows = new ArrayList<Row>();
這是半僞代碼,但我覺得你的想法
添加新行到列表中可以
rows.add(new Row(new Integer(1), "a string", new LatLng(51.448495, 5.470877));
編輯行可與
完成完成rowIndex = 3;
Row row = rows.get(rowIndex);
row.i = 2; //give a new value
//etc
編輯:用實際代碼替換pseude代碼
感謝downvote,請問爲什麼?這與接受upvote的答案沒有什麼不同 - 我也在這裏學習 – 2014-10-28 21:06:31
對不起,我放了一個downvote,它實際上是我所尋找的,因爲DATA對於你的答案是動態的,我將它標記爲解決方案。但是我想知道如何在地圖上添加「行」?使用map.add(object?); – gotgot1995 2014-10-28 21:13:58
是的,我會在一秒內編輯它 – 2014-10-28 21:18:26
地圖只是一個鍵和值,HashMap的讓人很沒有意義
的Java不會讓你定義數據結構的這種方式。類型A的集合應僅保存A類或其子類型的實例。
編輯:從您提供的數據看起來好像你想處理數據庫表中的每一行。最合適的數據結構是具有一個類,該類與數據庫表相對應。
當您從結果集中獲取一行時,只需創建該類的一個實例。
Class mysqlTuple
{
public Integer id;
public String message;
public LatLng latitude;
public Marker longitude;
}
mysqlTupe [] mysqlTable = new mysqlTupe [];
這將是一個解決方案,但我希望不同的對象鏈接到像MySQL表上的相同的ID。 – gotgot1995 2014-10-28 20:05:59
請爲我們提供一個數據示例。這將更容易理解 – Chiseled 2014-10-28 20:07:51
我有一個MySQL表,我的android應用程序通過PHP腳本下載它的內容,該腳本返回JSON語法數據。 我的表格結構就是這樣的:| id | message |緯度|經度| 事情是我想按行處理這個數據(例如,當你做一個MySQL請求,你只想返回鏈接到ID號碼276的消息)。 – gotgot1995 2014-10-28 20:13:24
這在很大程度上取決於你想要達到 選擇一項什麼是保持3個不同的地圖:
Map<String, Integer>
Map<String,Marker>
Map<String,LatLng>
另一種選擇是讓一個:
Map<String,Object>
然而你將不得不'instanceof'來檢查真實類型,這不是最佳實踐。
「Map」是將鍵與值相關聯的東西。什麼是「Map 」?我認爲你只是想要一個'Map
map只是關鍵值pairs.HashMap沒有多大意義 –
Chiseled
2014-10-28 19:50:03
爲了讓更多的認識, d想象一個像MySQL表一樣存儲數據的變量。一個主鍵(例如)和幾個數據。像這樣: | id | message(string)| latitude(double)| longitude(double)| – gotgot1995 2014-10-28 20:09:42