您的位置:首页 > 移动开发 > Unity3D

蓝鸥Unity开发基础——Switch语句学习笔记

2016-08-15 14:23 816 查看
一、Switch语法

属于多分支语句,通过判断表达式的值,来决定执行哪个分支

Break用于结束某个case,然后执行switch之外的语句

Switch-开关:case-情况开关决定发生的情况

二、Switch基本语法

Switch(表达式){

Case 值1:

语句1

Break;

Case 值2:

语句2

Break;

……

Case 值n:

语句n

Break;

Default:

语句

Break;

}



举例:在控制台输入1,打印“一月”,输入2打印“二月”,输入3,打印“三月”,输入其他打印“其他月份”

首1、我们用if语言做一下!

using System;

namespace Lesson12
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            int a = int.Parse (Console.ReadLine());
            if (a == 1) {
                Console.WriteLine ("一月");
            } else if (a == 2) {
                Console.WriteLine ("二月");
            } else if (a == 3) {
                Console.WriteLine ("三月");                
            } else {
                Console.WriteLine ("其他月份");            
            }

        }
    }
}

2、用switch来执行

               //switch
            switch(a){
            case 1:
                Console.WriteLine ("一月");
                break;
            case 2:
                Console.WriteLine ("二月");
                break;
            case 3:
                Console.WriteLine ("三月");
                break;            
            default:
                //用于处理以上情况都不满足,需要执行的代码
                Console.WriteLine ("其他月份");            
                break
            }

三、注意事项

整个defaul语句都可以舍掉,default语句最多只能由一个

Switch(表达式),里面的表达式值不能是浮点数

多个case可以执行同一个语句块,case的位置也可以任意

Case后面只要有语句,必须加上break,否则语法错误

Case后面的标签只能是常量或者常量表达式,要有一个具体的值,不能用变量作为case的标签。



举例说明:            string s="yue";
            //case 后面的值必须和表达式的值类型相同
            //case 后面不能跟变量,只能是常量或常量表达式,case后面值必须是确定的值
            //case 的顺序不影响最终的结果
            //多个case可以执行同一个语句块
            //多个case执行一个语句块
            //如果case中包含代码,就必须要写break
            switch(s){
            case "eryue":
            case "er":
            case "yue":
                Console.WriteLine ("二月");
                break;
            case "dd":
                Console.WriteLine ("三月");
                break;
            case "sdf":
                Console.WriteLine ("一月");
                break;
            default:
                //用于处理以上情况都不满足,需要执行的代码
                Console.WriteLine ("其他月份");            
                break;
            } 

四、Switch和if的区别

If和switch都是实际开发中最最常见的语法

If语句的表达式值一般是bool类型

Switch语句通常会有break结束case语句的执行

 


using System;

namespace Lesson12
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            
            int a = int.Parse (Console.ReadLine());

            //用if来写

//            if (a == 1) {
//                Console.WriteLine ("一月");
//            } else if (a == 2) {
//                Console.WriteLine ("二月");
//            } else if (a == 3) {
//                Console.WriteLine ("三月");                
//            } else {
//                Console.WriteLine ("其他月份");            
//            }

            //switch 中的表达式的值不能是浮点数,只能是整数,字符串,一般使用整形
    
        switch(a){
        case 1:
                Console.WriteLine ("一月");
            break;
            case 2:
                Console.WriteLine ("二月");
            break;
            case 3:
            Console.WriteLine ("三月");
            break;            
            default:
                Console.WriteLine ("其他月份");            
                break;
        }

            string s="yue";
            //case 后面的值必须和表达式的值类型相同
            //case 后面不能跟变量,只能是常量或常量表达式,case后面值必须是确定的值
            //case 的顺序不影响最终的结果
            //多个case可以执行同一个语句块
            //多个case执行一个语句块
            //如果case中包含代码,就必须要写break
            switch(s){
            case "eryue":
            case "er":
            case "yue":
                Console.WriteLine ("二月");
                break;
            case "dd":
                Console.WriteLine ("三月");
                break;
            case "sdf":
                Console.WriteLine ("一月");
                break;
            default:
                //用于处理以上情况都不满足,需要执行的代码
                Console.WriteLine ("其他月份");            
                break;
            }

        }
    }
}

 


练习题:从控制台输入1-7,程序中通过switch来打印对应的星期几

            int a = int.Parse (Console.ReadLine());

            switch(a){
            case 1:
                Console.WriteLine ("星期一");
                break;
            case 2:
                Console.WriteLine ("星期二");
                break;
            case 3:
                Console.WriteLine ("星期三");
                break;            
            case 4:
                Console.WriteLine ("星期四");
                break;            
            case 5:
                Console.WriteLine ("星期五");
                break;    
            case 6:
                Console.WriteLine ("星期六");
                break;            
            default:
                Console.WriteLine ("星期日");            
                break;
            }

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息