创建一个递增数组的程序

时间:2016-07-07 12:35:45

标签: java arrays oop

整数数组存储值3,2,3,4,5。我正在尝试创建一个程序,将这些值递增2,然后使用for循环将结果保存到同一个数组中。我试过但我的代码有问题,在这里:

public class ArrayClass {
  int a[] = {2, 3, 3, 4, 5};
}

public class ArrayObject {
  public static void main(String[] Ella) {
    int a[] = new int[5];
    int i;
    for (i = 2; i < a.length; i = i + 2) {
      a[i] = i + 2;
      System.out.println(a[i]);
    }
  }
}

3 个答案:

答案 0 :(得分:2)

这应该有效:

for (i = 0; i < a.length; i++) {
  a[i] += 2;
  System.out.println(a[i]);
}

您会看到,当增加数组的每个值时,索引必须为0且最大为数组的长度。通过向i添加一个,数组的索引增加1,这意味着下一个数字将增加2。你所做的是在“i”变量中添加两个,这意味着只有3个varialbes会被更改。

答案 1 :(得分:1)

请在下面更改您的代码。它会工作。

for (i = 0; i < a.length; i++) {
      a[i] = a[i] + 2;
      System.out.println(a[i]);
    }

答案 2 :(得分:0)

错误是当你执行i = i + 2时,你只是递增位置索引,而不是该位置的实际值。

你需要这样做:

a[i] = a[i]+2;

让我解释一下[i]是什么:

|3|2|3|4|5|
 1 2 3 4 5

第一行是值。第二行是索引。 &#34;指数&#34;表示阵列中每个位置的位置编号。

另一个问题是,当您初始化i时,它必须是i=0。这是因为i数组索引(多个索引)总是从0开始。这意味着a[0]是数组中的第一个位置,它将是数据集中的第3个位置。

相关问题