我正在寻找一种方法来覆盖/替换arraylist中的值,arraylist本身是一个hashmap中的值。
以下是为我们提供的一些代码。
public Equations(Double[][] matrix) {
// save input matrix into M -- it represents the equations
M = new HashMap<Integer,ArrayList<Double>>();
for (int i=0;i<matrix.length;i++) { // step through rows of matrix
ArrayList<Double> L = new ArrayList<Double>(Arrays.asList(matrix[i]));
M.put(i,L);
}
}
// handy method to return a specific coefficient in row/column
public Double Element(int row, int column) {
return M.get(row).get(column);
}
我们正在使用Hashmaps执行高斯消除。我准备了高斯消除代码以找到该行的因子,将其应用于该行中的第一列值,并从该行中的值中减去该值。得到的数字是我需要传递给hashmap和arraylist以替换刚被分解和减去的值。
我有办法用数字代替这个数字吗?或者我是否需要构建一个全新的arraylist,并使用M.put(key,arraylist)替换旧的arraylist?
答案 0 :(得分:0)
M.get(i).set(j, value);
其中i-&gt; HashMap中arraylist的关键。 j-&gt; arraylist中的元素索引。 value-&gt;要在指定索引处更新的新值。