介绍
介绍
上一课我们学会了循环语句(for,while)的编程技巧,这使得我们可以开发比较复杂的程序了。
今天福哥会给童鞋们讲讲交换语句(switch,case)的使用方法,交换语句适合对一个变量的值等于不同内容的时候进行不同处理的情况。
其实来说交换语句(switch,case)完全可以通过条件语句(if)来替代,不过使用交换语句可以有更高的执行效率,还可以让代码结构看起来更加清晰,所以如果情况适合的时候福哥还是推荐使用交换语句来编写代码
交换语句
交换语句适合于在处理一个变量或者表达式的值为不同内容的情况下分别进行不同的操作的情况
c/c++
在c/c++里面使用交换语句的变量只能是整型或枚举类型
int age; age = 35; switch (age) { case 12: cout << "你猜错了,福哥没有这么小哦!" << endl; break; case 25: cout << "你猜错了,福哥参加工作很多年了呢!" << endl; break; case 35: cout << "恭喜!猜对了!" << endl; break; default: cout << "这个答案我不是很确定!" << endl; break; }
java
在java里面可以使用的类型就比较多了
String age; age = "35"; switch (age) { case "12": System.out.println("你猜错了,福哥没有这么小哦!"); break; case "25": System.out.println("你猜错了,福哥参加工作很多年了呢!"); break; case "35": System.out.println("恭喜!猜对了!"); break; default: System.out.println("这个答案我不是很确定!"); break; }
php
因为php是弱类型语言,所以大部分变量都可以用于交换语句里面
$age = "35"; switch ($age) { case "12": print ("你猜错了,福哥没有这么小哦!\n"); break; case "25": print ("你猜错了,福哥参加工作很多年了呢!\n"); break; case "35": print ("恭喜!猜对了!\n"); break; default: print ("这个答案我不是很确定!\n"); break; }
python
python属于半弱类型语言,python的变量声明不需要指定变量类型,但是使用的时候不同变量类型不能混用,需要进行转换
python没有switch语法,只能通过if、elif、else组合实现
age = "35" if age == "12": print ("你猜错了,福哥没有这么小哦!") elif age == "25": print ("你猜错了,福哥参加工作很多年了呢!") elif age == "35": print ("恭喜!猜对了!") else: print ("这个答案我不是很确定!")
javascript
javascript和php一样也属于弱类型语言,所以大部分变量都可以用于交换语句
age = "35"; switch (age) { case "12": console.log("你猜错了,福哥没有这么小哦!"); break; case "25": console.log("你猜错了,福哥参加工作很多年了呢!"); break; case "35": console.log("恭喜!猜对了!"); break; default: console.log("这个答案我不是很确定!"); break; }
交换语句与条件语句
我们举两个例子对比一下交换语句和条件语句的语法上的不同
switch
int age; age = 35; switch (age) { case 12: cout << "你猜错了,福哥没有这么小哦!" << endl; break; case 25: cout << "你猜错了,福哥参加工作很多年了呢!" << endl; break; case 35: cout << "恭喜!猜对了!" << endl; break; default: cout << "这个答案我不是很确定!" << endl; break; }
if
int age; age = 35; if (age == 12) { cout << "你猜错了,福哥没有这么小哦!" << endl; } else if (age == 25) { cout << "你猜错了,福哥参加工作很多年了呢!" << endl; } else if (age == 35) { cout << "恭喜!猜对了!" << endl; } else{ cout << "这个答案我不是很确定!" << endl; }
总结
可以发现交换语句的语法很漂亮,在对一个变量/表达式的值进行分别处理的时候,使用交换语句switch是最好的选择了
好了,今天的课就到这里了~~