我正在编写代码,计算数组Volt中所有元素的总和。到目前为止,这是我的代码:

public class Volt{
  int[][] volt;

  public Volt(int[][] volt){
    this.volt = volt;
  }

  public int sum(){
    int sum = 0;
    for( int i = 0; i <volt.length; i++) {
      for( int r = 0; r <volt.length; r++){
      sum += volt[i][r];
      }
    }
    return sum;
  }

  public static void main(String[] args){
    int[][] a1 = { { 10, 5 }, { 2, 8 } };
    Volt m1 = new Volt(a1);
    System.out.println(m1.sum());

  }
}


但是,即使volt矩阵参差不齐,并不是所有行都包含相同的列数,我还是想使其工作。我做了很多研究以弄清楚我现在的观点,但现在可能需要改变。我将不胜感激:)
谢谢!

最佳答案

不用在内部for循环中循环到volt.length,只需循环到您在外部循环中使用的数组的长度即可,即volt[i].length

for( int r = 0; r <volt[i].length; r++){


顺便说一句,您还可以使用增强的for循环:

int sum = 0;

for (int[] a : volt)
    for (int i : a)
        sum += i;

关于java - 参差不齐的数组中的元素之和,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18907345/

10-09 05:41