在java中循环某些IF语句

时间:2018-04-22 22:05:39

标签: java if-statement

import java.util.Scanner;

public class main {

    public static void main(String[] args) {
        int number = 0;
        Scanner input = new Scanner(System.in);
        System.out.print("Please enter the number of sides");

        number = input.nextInt();  

    if (number == 1) {
        System.out.println("Circle");
    }

    if (number == 3) {
        System.out.println("Triangle");
    }

    if (number == 4) {
        System.out.println("quadrilateral");

    }

    else {
        System.out.println("Incorrect Input");
}
}

}

您好,我正在尝试使用if语句。任何人都可以建议我如何循环if语句?因为我得到了这个结果,例如: 圈 输入不正确。

另外,我怎么能重复扫描仪让我输入另一个输入?

4 个答案:

答案 0 :(得分:1)

目前,else子句仅与最后一个if块关联,即if (number == 4) {...}这意味着如果执行任何其他if块,它仍将打印“输入错误” 。解决方案是使用else if而不是单独的if。

if (number == 1) {
     System.out.println("Circle");
}else if (number == 3) {
     System.out.println("Triangle");
}else if (number == 4) {
     System.out.println("quadrilateral");
}
else {
    System.out.println("Incorrect Input");
}

答案 1 :(得分:0)

您可以使用switch case(请参阅:https://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html)。

您可以使用instanceof检查数字或字符串的类型。

答案 2 :(得分:-1)

对于你的第二部分问题,我猜你正在寻找类似do .... while循环的东西,你可以设置一些条件,如果输入结果不是数字,那么它会卡在循环中直到用户输入一个数字,然后才进入if,else-if语句

答案 3 :(得分:-1)

如果你想循环使用while循环:

while(true){

           int number = 0;
    Scanner input = new Scanner(System.in);
    System.out.print("Please enter the number of sides");

    number = input.nextInt();  

if (number == 1) {
    System.out.println("Circle");
}

if (number == 3) {
    System.out.println("Triangle");
}

if (number == 4) {
    System.out.println("quadrilateral");

}

else {
    System.out.println("Incorrect Input");
      }
   }

}