我的程序用数字填充了一个整数数组,我称之为计数数组:
int[] array count = {5, 4, 3, 0};
现在我想使用 for 循环以图形方式水平打印我的数组。我想用星号打印我所有的值,一个例子是:
*
* *
* * *
* * *
* * *
count(0) count(1) count(2) count(3)
首先,我想找出我的数组的最大值是多少。如果此最大值 = 匹配,则我打印为星号,否则为空格。但是,我不能只是循环,然后执行 maxint - 1,并检查是否存在匹配项,因为那样我只会得到每个数组的最大值的星号和剩余空间。
因此,我尝试解决并从每个最小值开始并向上工作。
for (int k = 0; k <= 6; k++) {
System.out.println("NEXTLINE");
maxInt = (maxInt - maxInt) + k;
for (int i = 0; i < controleArray.length; i++ ) {
int graphLetter = letterCount[i];
for (int j = 0; j < 25; j++) {
//System.out.println("TESTinner ");
if (graphLetter > maxInt) {
System.out.print(" * ");
break;
} if (graphLetter <= maxInt) {
System.out.print(" ");
break;
}
}
到目前为止,这段代码正在计算我的数组的每个值并打印星号。但是,也有被颠倒印刷的。所以输出看起来像这样。
* * * NEXTLINE
* * * NEXTLINE
* * * NEXTLINE
* * NEXTLINE
* NEXTLINE
为什么会这样?有什么更好的方法来看待这个解决方案?