我已经编写了使用2 for循环打印斜杠的代码。如何仅使用一个for循环打印相同的内容?
public static void main(String[] args)
{
int i,j;char[][] ch=new char[100][100];
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if(i==j)
ch[i][j]='*';
else
ch[i][j]=' ';
System.out.print(ch[i][j]);
}
System.out.println(' ');
}
答案 0 :(得分:2)
这是一种方式:
import java.util.Arrays;
public class App {
public static void main(String[] args) {
char[] line = new char[100];
for (int i = 0; i < 4; i++) {
Arrays.fill(line, ' ');
line[i] = '*';
System.out.println(line);
}
}
}
我们的想法是使用基于数组的操作(在本例中为fill
)来避免其中一个显式循环。
答案 1 :(得分:2)
还是慢一点:
For(int i = 0; i < width*height; i++) {
Int x = i%height
Int y = (i-x)/height
// Code using ch[x][y]
}
通过电话编辑:)