Java 为什么这会创建一个无限循环?
我正在尝试使用一些方法编写一个java程序,以构造一个沙漏图形,该图形是基于3-10之间的用户输入的特定大小。然而,当我运行程序时,我得到一个无限循环Java 为什么这会创建一个无限循环?,java,infinite-loop,Java,Infinite Loop,我正在尝试使用一些方法编写一个java程序,以构造一个沙漏图形,该图形是基于3-10之间的用户输入的特定大小。然而,当我运行程序时,我得到一个无限循环 public static void main(String[] args){ int height; Scanner keyboard = new Scanner(System.in); System.out.println("Enter an integer between 3 and 10 to control
public static void main(String[] args){
int height;
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter an integer between 3 and 10 to control the" +
" heigth of the hour glass: ");
height = keyboard.nextInt();
line();
topHalf();
bottomHalf();
line();
}
public static void line() {
System.out.println("+");
for (int i = 1; 1<= 10; i++){
System.out.println("-");
System.out.println("+");
}
}
public static void topHalf()
{
for(int line = 1; line <= 3; line++){
System.out.println("|");
for (int i = 1; i<= (line - 1); i++){
System.out.println(" ");
}
System.out.println("\\");
for (int i = 1; i <= (6 - 2 * line); i++){
System.out.println(".");
}
System.out.print("/");
for (int i = 1; i <= (line - 1); i++){
System.out.println(" ");
}
System.out.println("|");
}
}
public static void bottomHalf()
{
for (int line = 1; line <= 3; line++){
System.out.println("|");
for (int i = 1; i <= (3 - line); i++){
System.out.println(" ");
}
System.out.println("/");
for (int i = 1; i <= 2 * (line - 1); i++){
System.out.println(".");
}
System.out.println("\\");
for (int i = 1; i <= (3 - line); i++){
System.out.print(" ");
}
}
}
}
我真的不知道发生了什么,但我肯定它不是沙漏形状。当我运行它时,唯一发生的事情是一个无限循环+然后-。非常感谢您的帮助,谢谢 对于for循环-1,您的条件是1而不是i。您知道为什么它只为代码行打印一个符号,而不是创建图片吗?@Drewmeister96 System.out.println打印一行。
for (int i = 1; 1<= 10; i++){
for (int i = 1; i<= 10; i++){