ArrayIndexOutOfBoundsException 3 Ошибка при создании тройного массива - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть два списка и целое число:

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);

                int K=2;

Чем я создаю этот дубль со следующими значениями:

double[][] c=[[0.5, 0.4, 0], [0, Infinity, Infinity], [0.4, 0, Infinity]]

Теперь я бы создал новую матрицу с этими значениями, но используя в качестве индекса значения списков. Таким образом, для первой ячейки [Origin = 1, Dest = 2] я должен получить 0,5.

Плюс, после этого я добавлю новый индекс для целого числа K. Для каждого ki будет наблюдаться повторение двойного числа. Итак, для k = 0 у меня есть все значения, для k = 1 одинаковые.

Это мой код, но он не работает.

 double[][][]CC=new double[N][N][K];
                 for (int k=1;k<K;k++) {
                    CC[k]=new double[N][N];
                 for (int i = 0; i <Origin.size(); i++){
                       for (int j = 0; j <Dest.size(); j++){
                           CC[Origin.get(i)][Dest.get(j)][k]=c[i][j];      
                       System.out.println( Arrays.deepToString(CC));
                       }
                 }
                 }

Вы можете мне помочь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...