use*_*728 1 java loops switch-statement
我创建了一个带有switch语句的类,它根据用户选择的边数打印出多边形的名称.我无法弄清楚的问题是当一个边小于3且超过12时如何做到这一点.我宁愿使用if语句,但我不能解决这个问题.因为我可以使用一个案例:对于每个12以上的数字,例如案例13:,案例14:等等.我怎么能这样做?
import java.util.Scanner;
public class Lab13 {
public static void main(String[] args) {
int sides = 0;
Scanner scan = new Scanner(System. in );
System.out.println("Please enter the number of sides of your Polygon");
sides = scan.nextInt();
String polygonname = "";
switch (sides) {
case 3:
polygonname = polygonname + "triangle";
break;
case 4:
polygonname = polygonname + "square";
break;
case 5:
polygonname = polygonname + "pentagon";
break;
case 6:
polygonname = polygonname + "hexagon";
break;
case 7:
polygonname = polygonname + "heptagon";
break;
case 8:
polygonname = polygonname + "octagon";
break;
case 9:
polygonname = polygonname + "nonagon";
break;
case 10:
polygonname = polygonname + "decagon";
break;
case 12:
polygonname = polygonname + "dodecagon";
break;
}
System.out.print("A polygon with " + sides + " sides is called a " + polygonname + ".");
}
}
Run Code Online (Sandbox Code Playgroud)
利用default:在的结束switch,即会照顾所有其他情况下,它像最后else在if / else if / else if声明.写这样:
switch(sides) {
case 3:
polygonname=polygonname+"triangle";
break;
// ...
default:
polygonname=polygonname+"unknown";
break;
}
Run Code Online (Sandbox Code Playgroud)