【问题标题】:Adding one to each element in an array using an enhanced for loop in JAVA在 JAVA 中使用增强的 for 循环为数组中的每个元素添加一个
【发布时间】:2023-04-04 01:01:01
【问题描述】:

嘿伙计们,我在解决这个问题时遇到了一些麻烦。目的是通过向每个元素添加一个并使用增强的 for 循环打印它来转换像这样的 {1, 2, 3, 4} 的 int 数组,所以它看起来像这样 {2, 3, 4, 5}。这是我到目前为止得到的:

    int myArr[] = {1, 2, 3, 4};

    for (int i: myArr){
        i =+1;
        myWindow.writeOutLine(i);
    }

很确定这不是关闭,我不确定如何将新值存储在数组中并转到下一步。

【问题讨论】:

    标签: java arrays loops for-loop int


    【解决方案1】:

    你不能用增强的 for 循环来做到这一点,因为那个循环隐藏了数组的索引,所以你不能修改数组。

    改用传统的 for 循环。

    for (int i = 0; i < myArr.length; i++) {
        myArr[i]++;
        myWindow.writeOutLine(myArr[i]);
    }
    

    【讨论】:

    • 好吧,从技术上讲,他可以使用for每个循环if他另外使用自己的索引变量,但这几乎会破坏目的每个人的。
    • @domdom 没错。
    【解决方案2】:

    如果你必须使用增强循环,你可以使用单独的索引变量。

    int myArr[] = {1, 2, 3, 4};
    int count = 0 ;
    for (int i: myArr){
         myArr[count] = i+1;
         myWindow.writeOutLine(myArr[count]);
         count++;
    }
    

    【讨论】:

      【解决方案3】:
          int[] myArr = {1, 2, 3, 4};
      
          for(int i = 0; i < myArr.length; i++){
              int x = 1; // Amount to increment each value by
              myArr[i] = myArr[i] + x;
          }
      
          System.out.println(Arrays.toString(myArr));
      

      【讨论】:

        猜你喜欢
        • 2022-01-10
        • 2023-04-03
        • 1970-01-01
        • 2023-03-02
        • 2017-12-25
        • 2023-03-08
        • 1970-01-01
        • 1970-01-01
        • 2018-10-15
        相关资源
        最近更新 更多