2016-05-11 15 views
1

ちょうど別のアクティビティに送信されるHashMapsのArrayListにいくつかのデータを設定しました。そこではデコードされ、値は特定の配列に格納されます。私は第一の活動で構成された私のコードをお見せしましょう:ArrayListハッシュマップ抽出とarraylistへの格納

今第二の活動で
ArrayList<HashMap<String, String>> hashMapArrayList = new ArrayList<HashMap<String, String>>(); 
JSONArray jsonArray = new JSONArray(cena); 

for(int i=0; i<jsonArray.length(); i++) { 

    //ointer exception 
    jsonObject = jsonArray.getJSONObject(i); 

    pr = jsonObject.getString("price"); 
    cgN = jsonObject.getString("categoryName"); 
    pN = jsonObject.getString("productName"); 
    cN = jsonObject.getString("catalogName"); 

    HashMap<String, String> hashMap = new HashMap<String, String>(); 
    hashMap.put("Price", pr); 
    hashMap.put("CategoryName", cgN); 
    hashMap.put("ProductName", pN); 
    hashMap.put("CatalogName", cN); 

    hashMapArrayList.add(hashMap); 

    Intent intent = new Intent(Login.this, Checkout.class); 
    //I took bundle but type convention error was coming 
    intent.putExtra("arrayhash", hashMapArrayList); 
    startActivity(intent); 
} 

ArrayList<HashMap<String, String>> hashMapArrayList2 = 
    (ArrayList<HashMap<String, String>>) getIntent().getSerializableExtra("arrayhash"); 

// Now here I am confused with extracting and also after extracting storing it like this: 

/*String price[]; 
    String categoryName[]; 
    String productName[]; 
    String catalogName[];*/ 

大きな感謝を、深く感謝しています。

答えて

1
String[] price = new String[hashMapArrayList2.size()]; 
String[] categoryName = new String[hashMapArrayList2.size()]; 
String[] productName = new String[hashMapArrayList2.size()]; 
String[] catalogName = new String[hashMapArrayList2.size()]; 

int i=0; 
for (Map<String, String> item : hashMapArrayList2) { 
    price[i] = item.get("Price"); 
    categoryName[i] = item.get("CategoryName"); 
    productName[i] = item.get("ProductName"); 
    catalogName[i] = item.get("CatalogName"); 
    i++; 
} 
+0

今すぐテストする予定なので、まず最初に繰り返して保存してください! OK? – notTdar

+0

。 hashmapは、キー値のペアを配列に変換する直接的な方法を提供しません。 –

+0

それは助けて、それは完全に感じた。雷応答のためにありがとう。 – notTdar

関連する問題