【问题标题】:How to use part of a 2D array in a ForEach loop?如何在 ForEach 循环中使用部分二维数组?
【发布时间】:2017-07-07 16:44:01
【问题描述】:

array 是一个二维数组,这些是元素:

  • [0] [2] [4] [6] [8]
  • [12] [14] [6] [6] [10]

如何使用for-each 循环仅访问array 的第二行?

我试过做...

for (int n : array[1])
     n++;

但它似乎不起作用。

【问题讨论】:

  • 这是什么语言?
  • 我从未见过像这样的二维数组
  • 这是Java,我只是展示数组中的元素是什么/

标签: java arrays for-loop 2d each


【解决方案1】:

在 Java 中,数组是从零开始的,因此您将 [1] 指向第二维的想法是朝着正确的方向发展的。试试这个:增加数组第一个维度的大小,然后在循环中访问第二个维度:

    for (int i = 0; i < array.length; i++)
        System.out.println(array[i][1]);

您最初询问的是 for-each 方法。在 Java 中,多维数组只是一个数组的数组,因此您希望依次获取每个子数组并打印它的第二个元素。像这样:

    for (int sub[] : array)
       System.out.println(sub[1]);

【讨论】:

  • 是的,这就是我最终所做的。你知道是否有办法使用 for-each 循环吗?还是只能这样?
【解决方案2】:

似乎问题在于您的 2D 数组 创建。您使用的 for-each 循环是正确的。确保按如下方式创建数组:

int[][] arr = {{0, 2, 4, 6, 8},{12, 14, 6, 6, 10}};

如果您在循环中使用 System.out.println,它将打印 12、14、6、6、10

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-06
    • 2019-06-02
    • 1970-01-01
    • 2012-03-22
    • 2013-09-18
    • 1970-01-01
    • 2015-08-02
    相关资源
    最近更新 更多