Я импортирую некоторые значения из matlab в коде java (Eclipse). Я хочу изменить индекс матрицы со списками, которые у меня есть в java. Как я могу это сделать?
'' '
public class ConMat {
public static void main(String[] args) throws Exception {
int n = 2;// number of requests
int K=2;
int F=2*n;
int N=2*n;
LinkedList<Integer> Origin = new LinkedList<Integer>();
Origin.add(0,1);
Origin.add(1,2);
Origin.add(2,3);
LinkedList<Integer> Dest = new LinkedList<Integer>();
Dest.add(0,2);
Dest.add(1,3);
Dest.add(2,1);
LinkedList<Integer> U = new LinkedList<Integer>();
U.addAll(Origin);
U.addAll(Dest);
LinkedList<Integer> Z = new LinkedList<Integer>();
Z.addAll(Origin);
Z.addAll(Dest);
// Z.add(4,0);
// Z.add(5,5);
MatlabEngine eng1 = MatlabEngine.startMatlab();
eng1.eval("addpath('.\\MATLAB\\Dial')");
int D=3;
double[][] OD_incr=new double[D][D] ;
double[][]odmatrix=new double[D][D];
double [] origins= {1,2,3};
double [] destinations= {2,3,1};
double []scaling= {2};
double[][]roots = eng1.feval("Dial_java",OD_incr,origins,destinations,scaling);
System.out.println(Arrays.deepToString(roots));
Я получаю это:
[[0.5, 0.4791428571428572, 0.0], [0.0, Infinity, Infinity], [0.4791428571428572, 0.0, Infinity]]
Я хочу создать матрицу с этими значениями и индексом равно Origin и Dest.
Например:
double[][] c = new double[][];
for( int i:Origin){
for(int j:Dest){
c[i][j]=roots[i][j];
}
}
Как я могу это сделать?