= 0; y--){ -6ren">
gpt4 book ai didi

java - "if"语句背后的逻辑是什么?使用 for 循环绘图

转载 作者:行者123 更新时间:2023-12-02 11:35:23 25 4
gpt4 key购买 nike

所以我应该使用 for 循环画一座山,使用 if 语句来决定使用什么字符。这就是我最初所做的。

for (int y = intMaxHeight; y >= 0; y--){
for (int x = 0; x < arr.length; x++){
double height = arr[x];

if (y == 0){
System.out.print("-");
}

if (((y - height) < 1) && ((y - height) > -1)){
System.out.print("^");
}

if (y > height){
System.out.print(" ");
}

if ( y < height){
System.out.print(symbol);
}
}
System.out.println();
}

这打印出了一座非常丑陋的山 This prints out a very ugly mountain现在,通过在最后三个语句中添加“else”,这座山看起来就像它应该的那样,我想知道为什么会这样。 enter image description here

但是新的问题是山顶符号“^”有时会被打印两次,这是不应该发生的。我尝试改变 if 语句的顺序,但就像丑陋的山一样,它没有改变任何东西。关于问题可能是什么的任何想法吗?

最佳答案

这就是 if/else 语句的工作方式。在你当前的结构中,它们都是如果。这意味着如果第一个语句为 true,则代码将进入并执行该语句内的 block 。但随后它也会检查所有其他 if 语句,如果有任何结果为真,它也会输入并执行其中的代码。使用 if/else 语句时,一旦输入 if block ,则不会输入任何其他 block 。所以就像上面的例子一样,如果输入了第一个 if 语句,那么其余的 else if 就不需要检查。仅当前一个 if 失败时才检查 else 或 else if

关于java - "if"语句背后的逻辑是什么?使用 for 循环绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48977401/

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