Java 将数组索引除以下一个索引

Java 将数组索引除以下一个索引,java,arrays,Java,Arrays,我还在学习Java,有一个关于数组的问题 我的阵列: double arr[] = {1.8, 3.6, 5.0, 2.0}; 我的问题是如何将第一个索引除以下一个索引,依此类推,而不是最后一个索引。 每个指数都要除以2。因此,生成的数组如下所示: double arr[] = {0.5, 0.72, 2.5, 2.0}; 我走在正确的轨道上,这样做: public static void main(String [] args){ double arr[] = {1.8, 3.6

我还在学习Java,有一个关于数组的问题

我的阵列:

 double arr[] = {1.8, 3.6, 5.0, 2.0};
我的问题是如何将第一个索引除以下一个索引,依此类推,而不是最后一个索引。 每个指数都要除以2。因此,生成的数组如下所示:

double arr[] = {0.5, 0.72, 2.5, 2.0};
我走在正确的轨道上,这样做:

public static void main(String [] args){
    double arr[] = {1.8, 3.6, 5.0, 2.0};

    for(int j = 0; j < arr.length; j++){
        arr[j] = arr[0] / arr[1];
        arr[j] = arr[1] / arr[2];

        System.out.println(arr[j]);
    }
}
publicstaticvoidmain(字符串[]args){
双arr[]={1.8,3.6,5.0,2.0};
对于(int j=0;j
我不知道如何进行,非常感谢所有的帮助

谢谢。

试试这个:

for(int j = 0; j < arr.length-1; j++){
        arr[j] = arr[j] / arr[j+1];
        System.out.println(arr[j]);
    }
System.out.println(arr[arr.length-1]);  // this will print the last element 
for(int j=0;j
`

这应该可以:

public static void main(String [] args) {
  double arr[] = {1.8, 3.6, 5.0, 2.0};
  int j;
  System.out.print("[");
  for(j = 0; j < arr.length - 1 ; j++) {
    arr[j] = arr[j] / arr[j+1];
    System.out.print(arr[j] + " , ");
  }
  System.out.println(arr[j] + "]");
}
因此,我们在数组上运行,将每个元素(
j
)除以下一个元素(
j+1
),然后打印它。

公共静态void main(字符串[]args){
public static void main(String[] args) {
    double arr[] = { 1.8, 3.6, 5.0, 2.0 };
    double[] resultArr = new double[arr.length];

    for (int i = 0; i < arr.length - 1; i++) {
      double result = arr[i] / arr[i + 1];
      resultArr[i] = result;

    }
    resultArr[arr.length - 1] = arr[arr.length - 1];


  }
双arr[]={1.8,3.6,5.0,2.0}; double[]resultar=新的double[arr.length]; 对于(int i=0;i
请先尝试自己解决问题。如果您在实现中遇到任何问题,那么您可以问具体的问题。嘿,Rohit,好的,我会的,只是我一直在打砖墙:[提示:
arr.length
会给您长度:
[0,1,…,arr.length-1]
是数组的索引。
for
会让您“旅行”关于数组。很好的一个!谢谢Maroun。就是这样。我真不敢相信你让它看起来有多容易。谢谢。我知道我在这里问了一些非常基本的问题,但每个人都很有帮助,这正在建立我自己的知识和经验。谢谢大家。sansix我想Op想要一个结果数组,它包含他在帖子中提到的输出。但是soluti在给定值上,不会最后打印源中的最后一个数字array@PrimalScientist是的,我明白了这一点。编辑后的答案将根据您的要求工作-您只需在循环后打印
arr[arr.length-1]
this@PrimalScientist从索引1中-如果我得到了正确的u,那么对(int j=1;j{@PrimalScientist噢,谢谢你的补充-是的,请随时提出问题:)太棒了。是的,我现在可以看到了。谢谢你的反馈。我现在已经设法解决了。这只是开始了解事情的工作方式。这对我来说太好了。另一个很好的方法是这样做。我正在写下来!!谢谢你,我是萨克!
public static void main(String[] args) {
    double arr[] = { 1.8, 3.6, 5.0, 2.0 };
    double[] resultArr = new double[arr.length];

    for (int i = 0; i < arr.length - 1; i++) {
      double result = arr[i] / arr[i + 1];
      resultArr[i] = result;

    }
    resultArr[arr.length - 1] = arr[arr.length - 1];


  }