Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法理解如何在循环中循环_Java - Fatal编程技术网

Java 无法理解如何在循环中循环

Java 无法理解如何在循环中循环,java,Java,我正在编写一个java代码来循环数据,其中有另一个循环。下面是我的代码 String names[] = { "user1", "User2", "User3", "User4", "User5" }; for (int i = 0; i < 10; i++) { for (int j = 0; j < names.length; j++) { System.out.println(i + " " + names[j]); } } 预期输出: 0 u

我正在编写一个java代码来循环数据,其中有另一个循环。下面是我的代码

String names[] = { "user1", "User2", "User3", "User4", "User5" };
for (int i = 0; i < 10; i++) {
    for (int j = 0; j < names.length; j++) {
        System.out.println(i + " " + names[j]);
    }
}
预期输出:

0 user1
0 User2
0 User3
0 User4
0 User5
1 user1
1 User2
1 User3
1 User4
1 User5
2 user1
2 User2
2 User3
2 User4
2 User5
3 user1
3 User2
3 User3
3 User4
3 User5
4 user1
4 User2
4 User3
4 User4
4 User5
5 user1
5 User2
5 User3
5 User4
5 User5
6 user1
6 User2
6 User3
6 User4
6 User5
7 user1
7 User2
7 User3
7 User4
7 User5
8 user1
8 User2
8 User3
8 User4
8 User5
9 user1
9 User2
9 User3
9 User4
9 User5
0 user1
1 User2
2 User3
3 User4
4 User5
5 user1
6 User2
7 User3
8 User4
9 User5

请告诉我如何实现这一点。

您可以使用单个for循环:

for (int i = 0; i < 10 * names.length; i++) {
    System.out.println(i + " " + names[i % names.length]);
}

这是一个了解mod运算符的好机会
%

for (int i = 0; j < 10 ; i++) {
    System.out.println(i + " " + names[i % names.length]);
}
这是一种常见的方法,可以将索引循环回数组的开头,而无需为其创建单独的计数器。

使用Java 8

    String names[] = { "user1", "User2", "User3", "User4", "User5" };
    IntStream.range(0, 10).forEach( i -> System.out.println(i + " " + names[i % names.length]));

不需要使用嵌套循环!您只需使用一个循环打印值!对于预期结果>@poida,不,这不是,这是我正在编写的程序的一小部分。谢谢,这是我一直在寻找的。再次感谢:)
0 1 2 3 4 0 1 2 3 4
    String names[] = { "user1", "User2", "User3", "User4", "User5" };
    IntStream.range(0, 10).forEach( i -> System.out.println(i + " " + names[i % names.length]));