2016-09-16 7 views
0

arraylistの値を上書きする方法を探していますが、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); 
    } 

ガウス消去を実行するためにハッシュマップを使用しています。その行の要素を見つけてその行の最初の列の値に適用し、その行の前の行の値からその値を減算するために用意したGaussian Eliminationコードを用意しました。結果の数値は、ハッシュマップとarraylistに渡して、単に因数分解して減算した値を置き換える必要があります。

この番号を番号で置き換える方法はありますか?あるいは、私は新しいarraylistを作って、Mput(key、arraylist)を使って古いarraylistを置き換える必要がありますか?

+0

通常通りに置き換えてください。ハッシュマップは、配列リストがキーでない限り無関係です。 – EJP

答えて

0
M.get(i).set(j, value); 

ここで、i->キーは、HashMapのarraylistです。 arraylistの要素のj-> index value->指定したインデックスで更新したい新しい値。

関連する問題