【发布时间】:2014-03-05 15:29:29
【问题描述】:
已编辑,更多说明。 嗨,很抱歉这个模糊的问题,创建新哈希表时出现问题,我的意思是添加新行。
以前,如果我知道我想添加多少行示例我想添加 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);
}
【问题讨论】:
-
i have problems creating a new hashtable你有什么问题? -
In
populateList():list = new ArrayList<HashMap>();-- 您正在为每一行创建一个新的空列表,丢弃任何以前的条目。创建列表一次,然后将那些HashMaps 添加到其中。
标签: java android arraylist hashmap