【问题标题】:One time forloop Java一次for循环Java
【发布时间】:2017-12-01 09:15:25
【问题描述】:

好的,所以这可能是一个非常愚蠢的问题,但这里是。

我想遍历一个矩阵来检查值并在必要时更改它们。我将它分成几个部分,其中一个部分正在检查上面的行。 所以说你的行是'j',你的列是'i'。现在我想保持'i'不变(=0)并让'j'遍历行数。我以前这样做的代码是:

 for(int i=0;i<=0;i++)
    {
        for(int j=1;j<worldMatrix[i].length-1;j++) 
        {
              (Do something)
        }
    }

我不觉得第一个 for 循环有什么作用。但是经过搜索,我真的找不到替代方案。正如我所说,它可能真的很简单,我只是在寻找解决方案。我不知道这是否重要,但我正在尝试将生活游戏编程为一种练习。

感谢您的宝贵时间!

【问题讨论】:

标签: java arrays for-loop matrix iteration


【解决方案1】:

如果你想保持 i = 0 那么请不要写第一个循环只取 var i = 0 然后写第二个循环

int i = 0;

for(int j = 1; j < worldMatrix[i].length - 1; j++) {
    //(Do something)
}

【讨论】:

  • var 在 Java 中不存在。
【解决方案2】:

如果 i 是常量并且只在此处使用,您可以直接删除该变量并输入数字。

for(int j=1;j<worldMatrix[0].length-1;j++) {
    (Do something)
}

【讨论】:

  • 这可能是我认为最好的解决方案,因为 i 确实是恒定的。不,我还有一段代码,我在其中使用了一个 forloop,其中 i 和 j 都是常量。问题是我不知道如何让它在没有 forloop 的情况下运行。我尝试了“do”语句,但似乎没有时间工作。 for(int i=0;i
【解决方案3】:
for (int j = 0; j<matrix[0].length; j++) {
        // do something
    }

Arrays.stream(matrix[0])
            .forEach(value -> {
                // do something
            });

【讨论】:

  • 您能解释一下吗?它可以使您的答案更有用。
【解决方案4】:

第一个循环没有做任何事情,因为我没有改变。 i++ 基本上什么都不做,因为范围是 0 到 0。 保持第二个循环-

 for(int j=1;j<worldMatrix[0].length-1;j++) 
        {
          //action
          System.out.println(j);
          System.out.println(worldMatrix[0]);
          //you can also change the variable in your matrix

        }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-09
    • 1970-01-01
    • 1970-01-01
    • 2015-03-21
    • 1970-01-01
    • 2010-12-28
    相关资源
    最近更新 更多