[英]How to generate new hashtable during a for loop in the Arraylist of hashtable
編輯,更多澄清。 嗨,對於這個模糊的問題,抱歉,創建新哈希表時遇到的問題,我的意思是添加新行。
以前,如果我知道我要添加示例的行數,我想添加3行,我將聲明3個hashmap並輸入值,如下所示。 但是目前,我想進行一些計算,並根據所示的計算生成x的行數。 我不知道如何在for循環中聲明和創建新的行/哈希映射。
protected void populateList(int i,Double profit,Double balance, Double revenue)
{
list = new ArrayList<HashMap>();
HashMap row1 = new HashMap();
row1.put(FIRST_COLUMN,i);
row1.put(SECOND_COLUMN, balance);
list.add(row1);
HashMap row2 = new HashMap();
row2.put(FIRST_COLUMN,i);
row2.put(SECOND_COLUMN, balance);
list.add(row2);
HashMap row3 = new HashMap();
row3.put(FIRST_COLUMN,i);
row3.put(SECOND_COLUMN, balance);
list.add(row3);
}
我想創建一個具有多列的列表視圖,並在單擊按鈕時通過計算動態地刪除行。 所以我創建了一個哈希表(單個哈希表的行)的數組列表,但是我在創建一個新的哈希表時遇到了問題。
在onClick下
public void onClick(View view) {
for (int i=1; i <= count; i++) {
// figure to be input into column
Double profit = totalsum - cost;
Double balance = totalsum - profit - cost;
Double revenue = total sum;
populateList(i,profit,balance,revenue);
}
}
populateList方法
protected void populateList(int i,Double profit,Double balance, Double revenue)
{
list = new ArrayList<HashMap>();
HashMap temp = new HashMap();
temp.put(FIRST_COLUMN,i);
temp.put(SECOND_COLUMN, balance);
temp.put(THIRD_COLUMN, profit);
temp.put(FOURTH_COLUMN, revenue);
list.add(temp);
}
我想你要做的是
public void onClick(View view) {
List<HashMap> list = new ArrayList<HashMap>();
for (int i=1; i <= count; i++)
{
// figure to be input into column
Double profit = totalsum - cost;
Double balance = totalsum - profit - cost;
Double revenue = total sum;
list.add(populatelist(i,profit,balance,revenue));
}
}
protected HashMap populatelist(int i,Double profit,Double balance, Double revenue) {
HashMap temp = new HashMap();
temp.put(FIRST_COLUMN,i);
temp.put(SECOND_COLUMN, balance);
temp.put(THIRD_COLUMN, profit);
temp.put(FOURTH_COLUMN, revenue);
return temp;
}
但是很難說你給的東西。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.