【问题标题】:Creating an array that starts at n and ends at 0创建一个从 n 开始到 0 结束的数组
【发布时间】:2016-03-09 16:18:39
【问题描述】:

我在执行以下操作时遇到了困难。我不确定如何从 n 开始反转数组索引并向下工作到 0。有人可以帮我理解这一点吗?我正在考虑使用 for 循环,但我无法想象我将如何做到这一点。

谢谢。

• 向 App 类添加一个名为 public static int[] generateIntegerArray(int n) 的方法,该方法返回一个系统生成的长度为 n 的整数数组,该数组从 n-1 开始反向排序到 0 结束。例如调用generateIntegerArray(5) 会产生这个数组:{4, 3, 2, 1, 0}。

public static int[] generateIntegerArray(int n){

        int[] integerArray = new int[n];
        return integerArray;    
}

【问题讨论】:

  • 使用降序的for循环。

标签: java arrays inverse


【解决方案1】:

试试这样的:

int[] integerArray = new int[n];
for(int i = 0; i < n; i++) {
    integerArray[i] = n - i - 1;
}

return integerArray; 
}

【讨论】:

    【解决方案2】:

    你应该只用从 n-1 到 0 的值填充该数组

    for(int i=0; i<n; i++) {
        integerArray[i] = n-i-1;
    }
    

    for(int i=n; i>0; i--) {
        integerArray[n-i-1] = i;
    }
    

    【讨论】:

      【解决方案3】:

      public static int[] generateIntegerArray(int n){

          int[] integerArray = new int[n];
          for(int i = n - 1; i >= 0; --i){
               integerArray[n - 1 - i] = i;
           }
      
          return integerArray;    
      

      }

      for 循环将从 n - 1 运行到 0 并且值将被放入数组中

      【讨论】:

        【解决方案4】:
        for (int i = integerArray.length-1 ; i >=0; i--)
        {
           integerArray[i] = i;
        }
        

        看起来像(例如,如果长度为 6): 6,5,4,3,2,1,0 i - 是循环中的数字,它在每个循环中变化(i--); 所以,在输出中它看起来像:

        integerArray[6]
        integerArray[5]
        integerArray[4]
        integerArray[3]
        integerArray[2]
        integerArray[1]
        integerArray[0]
        

        如果我以正确的方式理解你)

        【讨论】:

          【解决方案5】:
          int[] integerArray = new int[]{1,2,3,4,5,6,7,8,9};
          int[] reversedArray = new int[integerArray.length];
          int j = 0;
          for (int i = integerArray.length -1; i > 0; i--){
              reversedArray[j++] = integerArray[i];
          }
          

          希望对您有所帮助..

          【讨论】:

            【解决方案6】:
            public static int[] generateIntegerArray(int n){ 
            
                int[] integerArray = new int[n];
                for(int i = 0; i < n; i++) {
                    integerArray[i] = n - i - 1;
                }
            
                return integerArray; 
            }
            

            【讨论】:

              猜你喜欢
              • 2021-04-03
              • 1970-01-01
              • 2016-10-14
              • 2011-02-17
              • 2018-04-13
              • 2017-06-09
              • 1970-01-01
              • 2020-02-26
              • 1970-01-01
              相关资源
              最近更新 更多