【问题标题】:Iterate throught two arrays at the same time [duplicate]同时遍历两个数组[重复]
【发布时间】:2019-02-20 11:04:33
【问题描述】:

如何同时遍历两个数组而不在 Java 中嵌套 for 循环?在伪代码中,它将是:

for each colorname in listOfColourNames and for each colorcode in listOfColourCodes
{
    print (colorname + " : " + colorcode);
}

在 Java 中甚至可以做到这一点吗?

【问题讨论】:

  • 当然可以,只需使用索引的传统方式,即for( int i = 0; i < Math.min(listOfColourNames .length, listOfColourCodes.length); i++) { ... }。不过需要注意的是:由于数据似乎是相关的,我建议不要使用 2 个数组,因为它们很容易不同步(例如,如果您对其中一个数组进行排序)。使用 1 个包含两个值的元素数组(或者更好的列表)。

标签: java arrays loops


【解决方案1】:

您可以使用外部虚拟索引,例如

for (int i=0; i < listOfColourNames.length; ++i) {
    System.out.println(listOfColourNames[i] + " : " + listOfColourCodes[i]);
}

只有当两个数组的长度相同时,您的问题才有意义。如果没有,那么您将只能覆盖两个数组,直到两者中较小的长度。

【讨论】:

    猜你喜欢
    • 2021-12-30
    • 2020-01-14
    • 1970-01-01
    • 2023-03-25
    • 2013-03-07
    • 2022-08-30
    • 2022-08-30
    相关资源
    最近更新 更多