我如何修改与循环相关的代码以使用 java 产生预期的输出?
How can I amend my code related to loops to produce the expected output using java?
因此,当 'r' 参数为整数 5(预期输出)时,我想打印出这样的内容:
0 5
1 4
2 3
3 2
4 1
5 0
这是我目前的代码:
public class RandomWalker {
public static void main(String[] args) {
int r = Integer.parseInt(args[0]);
for (int i = 0; i <= r; i++) {
for (int j = r; j >= 0; j--) {
System.out.println(i + " " + j);
}
}
}
}
相反,我得到了这个输出:
0 5
1 5
2 5
3 5
4 5
5 5
我知道我不能添加“break”;在 "System.out.println(i + " " + j);" 之后线。我应该在当前代码中修改什么以产生预期的输出?谢谢!
你不需要两个 for-loops。试试这个:
public class RandomWalker {
public static void main(String[] args) {
int r = Integer.parseInt(args[0]);
for (int i = 0; i <= r; i++) {
System.out.println(i + " " + r-i);
}
}
}
如果你想使用两个变量,那么你可以这样做:
public class RandomWalker {
public static void main(String[] args) {
int r = Integer.parseInt(args[0]);
int j = r;
for (int i = 0; i <= r; i++) {
System.out.println(i + " " + j);
j--;
}
}
}
尝试直播:
IntStream.rangeClosed(r)
.mapToObj(n -> n + " " + (r - n))
.forEach(System.out::println);
我的 java 生锈了,但像这样的东西应该可以工作:
public class RandomWalker {
public static void main(String[] args) {
int r = Integer.parseInt(args[0]);
String string ="";
for (int i = 0; i <= r; i++) {
string = i + " " + (r - i);
System.out.println(string);
}
}
}
您必须将 2 个循环合并为一个循环:
public class RandomWalker {
public static void main(String[] args) {
int r = Integer.parseInt(args[0]);
for (int i = 0, j = r; i <= r; i++, j--) {
System.out.println(i + " " + j);
}
}
}
因此,当 'r' 参数为整数 5(预期输出)时,我想打印出这样的内容:
0 5
1 4
2 3
3 2
4 1
5 0
这是我目前的代码:
public class RandomWalker {
public static void main(String[] args) {
int r = Integer.parseInt(args[0]);
for (int i = 0; i <= r; i++) {
for (int j = r; j >= 0; j--) {
System.out.println(i + " " + j);
}
}
}
}
相反,我得到了这个输出:
0 5
1 5
2 5
3 5
4 5
5 5
我知道我不能添加“break”;在 "System.out.println(i + " " + j);" 之后线。我应该在当前代码中修改什么以产生预期的输出?谢谢!
你不需要两个 for-loops。试试这个:
public class RandomWalker {
public static void main(String[] args) {
int r = Integer.parseInt(args[0]);
for (int i = 0; i <= r; i++) {
System.out.println(i + " " + r-i);
}
}
}
如果你想使用两个变量,那么你可以这样做:
public class RandomWalker {
public static void main(String[] args) {
int r = Integer.parseInt(args[0]);
int j = r;
for (int i = 0; i <= r; i++) {
System.out.println(i + " " + j);
j--;
}
}
}
尝试直播:
IntStream.rangeClosed(r)
.mapToObj(n -> n + " " + (r - n))
.forEach(System.out::println);
我的 java 生锈了,但像这样的东西应该可以工作:
public class RandomWalker {
public static void main(String[] args) {
int r = Integer.parseInt(args[0]);
String string ="";
for (int i = 0; i <= r; i++) {
string = i + " " + (r - i);
System.out.println(string);
}
}
}
您必须将 2 个循环合并为一个循环:
public class RandomWalker {
public static void main(String[] args) {
int r = Integer.parseInt(args[0]);
for (int i = 0, j = r; i <= r; i++, j--) {
System.out.println(i + " " + j);
}
}
}