gpt4 book ai didi

java - 循环遍历值

转载 作者:行者123 更新时间:2023-12-01 15:06:41 26 4
gpt4 key购买 nike

我正在尝试创建一个嵌套的 for 循环,它将生成用户指定范围内的所有对,范围从负值到正值。解释起来有点困难,但这是我的代码:

public class test method {

public static void main (String[] args) {

int a = Integer.parseInt(args[0]);
int b = Integer.parseInt(args[1]);
int c = 3;
int d = 4;

for (int i = -a; i <= a; i++)
for (int j = -b; j <= b; j++) {

System.out.println(a+" and "+b+" vs "+c+" and "+d+"\n");

}

}

}

给定命令行参数 1 和 2,我想要的输出将类似于:

-1 和 -2 与 3 和 4

-1 和 -1 与 3 和 4

-1 和 0 与 3 和 4

-1和1 vs 3和4

-1和2 vs 3和4

0 和 -2 与 3 和 4

0 和 -1 与 3 和 4

0 和 0 与 3 和 4

0和1 vs 3和4

0 和 2 与 3 和 4

1 和 -2 与 3 和 4

1 和 -1 与 3 和 4

1 和 0 与 3 和 4

1和1 vs 3和4

1和2 vs 3和4

最佳答案

我认为第一个 for 中缺少括号是复制和粘贴中的问题,但如果这是您的真实代码,那么您就会遇到问题。

a = Math.abs(a);
b = Math.abs(b);

for (int i = -a; i <= a; i++) {
for (int j = -b; j <= b; j++) {
System.out.println(i+" and "+j+" vs "+c+" and "+d+"\n");
}
}

有两件事。首先,您应该打印 ij,其次您还应该考虑负值。你的 for 将失败,因为 -a if a = -1 将导致

for (int i = 1; i <= -1; i++)

条件将不满足,迭代也不会发生。通过执行 Math.abs,您可以获得输入的绝对值,并且可以进行从负值到正值的迭代。如果 ab 均为正数,则 abs 方法将返回相同的值(分配 a b 与它们已有的值相同)。

对于cd应该做什么还有待观察。您想要的输出表明您将它们保持原样,所以我现在不会碰它们。

关于java - 循环遍历值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12868279/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com