【发布时间】:2021-08-22 20:24:26
【问题描述】:
我有一个二维数组如下
int[][] seatsPrices = {{10,10,10,10,10,10,10,10,10,10},
{10,10,10,10,10,10,10,10,10,10},
{10,10,10,10,10,10,10,10,10,10},
{10,10,20,20,20,20,20,20,10,10},
{10,10,20,20,20,20,20,20,10,10},
{10,10,20,20,20,20,20,20,10,10},
{20,20,30,30,40,40,30,30,20,20},
{20,30,30,40,50,50,40,30,30,20},
{30,40,50,50,50,50,50,50,40,30}};
我要求用户提供一个数字。假设他给了 20。所以,我想编写代码以迭代地将该值与 seatPrices 数组进行比较,并找到值是 20 的 seatPrices 数组的任何 i、j 索引,然后打印它。我可能应该使用 findAny() 但我不知道如何使用它。 注意:我只需要找到一个“20”并停止。因此,使用两个嵌套循环会给我带来一些问题。
【问题讨论】:
-
findAny返回元素,而不是它的索引 -
@AlbertoSinigaglia 如果我能以某种方式找到与输入的任何匹配项,我可以设法返回它的索引,没问题。我无法找到匹配项
-
@ufukYavuz 为什么要进行额外的步骤?我认为没有任何标准的 java 函数可以通过二维数组,但是两个嵌套的
for循环应该可以解决问题 -
由于比较 int 值是显而易见的(使用
==),我猜你在问如何Iterate through 2 dimensional array?迭代时只需比较特定位置的保持值。如果它拥有像 20 这样的搜索值,可以根据需要处理这些索引(将它们添加到某个列表中,打印它们等等)。 -
"一旦我找到与用户输入的匹配项,我需要退出循环。我找不到执行此操作的算法。它总是会产生一些问题 " 可能相关:How do I break out of nested loops in Java?
标签: java