如何在Java中将2dimentional列表转换为数组

时间:2019-07-13 16:26:51

标签: java arraylist matrix-multiplication

我正在尝试将2D数组的对角元素相乘,但我不知道如何转换列表

public static int diagonalDifference(List<List<Integer>> arr) {

2 个答案:

答案 0 :(得分:0)

您可以创建一个列表,在该列表中手动输入每个列表的每个元素,这样做可以使用Object [] array = list.toArray();

List<Integer> l = new ArrayList();
for(List<Integer> list : arr){ 
    l.add(list);
}
Object [] objectArray = l.toArray();
Integer[] integerArray = new Integer[objectArray.length];
// copy elements from object array to integer array
for (int i = 0; i < objectArray.length; i++)
    integerArray[i] = (Integer)objectArray[i];

答案 1 :(得分:0)

如果要将整数列表转换为整数[] [],则必须执行3个操作:  *将Integer转换为int(例如通过自动装箱)  *将List转换为int []  *将List转换为最终类型int [] []

您可以按照以下步骤进行操作:

let num = 3;
let primes = [2];

while (num < 2000000) {
  let sqrtNum = Math.floor(Math.sqrt(num));
  for (i = 0; sqrtNum >= primes[i]; i++) {
    if (num % primes[i] == 0) {
      num += 2;
      i = 0;
    } else {
      continue;
    }
  }
  primes.push(num);
  num += 2;
}

let sum = 0;
for (let i = 0; primes[i] < 2000000; i++) {
  sum += primes[i];
}

console.log(sum);