用 if 语句实现:将阿拉伯数字转换为中文数字
public class IfToNum { public static void main(String[] args) { // 阿拉伯数字和中文数字的转换 int n = 7; String str = n + "对应的中文大写数字是"; if(n==1) { str += "壹"; System.out.println(str); }else if (n==2) { str += "贰"; System.out.println(str); }else if (n==3) { str += "叁"; System.out.println(str); }else if(n==4) { str += "肆"; System.out.println(str); }else if (n==5) { str += "伍"; System.out.println(str); }else if (n==6) { str += "陆"; System.out.println(str); }else if(n==7) { str += "柒"; System.out.println(str); }else if(n==8) { str += "捌"; System.out.println(str); }else if(n==9) { str += "玖"; System.out.println(str); }else { System.out.println("请输入0~9的数字!"); } } }
那么像这种带有 int 类型数据的判断程序是否存在简便的方法呢?
这就要用到switch语句了~
switch 语句的语法
switch (用于比较的 int 值) {
case 目标值1:
需要执行的语句;
case 目标值2:
需要执行的语句;
case 目标值3:
需要执行的语句;
……
default:
缺省语句;
}
注意:switch 里的 case 子句中也可以有任意合法的语句,比如 if-else , for循环等。
现在我们用 switch 简化一下开头的程序:
public class SwitchToNum { public static void main(String[] args) { int n = 8; String str = n + "对应的中文大写数字是"; switch (n) { case 1: str += "壹"; System.out.println(str); break; // 这个break一定要加上,否则会继续执行后面的语句! case 2: str += "贰"; System.out.println(str); break; case 3: str += "叁"; System.out.println(str); break; case 4: str += "肆"; System.out.println(str); break; case 5: str += "伍"; System.out.println(str); break; case 6: str += "陆"; System.out.println(str); break; case 7: str += "柒"; System.out.println(str); break; case 8: str += "捌"; System.out.println(str); break; case 9: str += "玖"; System.out.println(str); break; default: // 这里放着缺省值。就是说上面的情况都不符合时,就走这个语句。 System.out.println("请输入0~9的数字!"); break; } } }
解析:
1. 一般来说,每种情况下,一定要加上break语句,在符合某一条件时,就会跳出 switch 语句,否则程序会继续执行下去;
2. default 表示缺省,一般是放在最底部的,它是指如果上述 case 中没有一个符合条件,那么就会走这个默认的语句,但是记得也要加上break。
来源:https://www.cnblogs.com/buildnewhomeland/p/12163516.html