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

原创 2016年08月15日 14:23:15

一、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;
            }

 

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_35761779/article/details/52210815

c#——switch case语句

c#——switch case语句 c#中的switch case语句有三种结构,具体形式如下图所示: (1)Switch的第一种结构:(如例1) ...
  • haiyan_cf
  • haiyan_cf
  • 2012-03-07 17:17:19
  • 27634

Unity高级——状态机——Switch状态机

Unity高级——状态机——Switch状态机
  • ios_song
  • ios_song
  • 2016-08-31 11:51:16
  • 2078

Unity UGUI SwitchButton制作

在游戏设置中我们经常会使用到类似这样的开关组件,但是UGUI并没有直接提供,通常我们都是使用Toggle组件加自己写的脚本完成这个效果,今天我们来制作一个脚本,直接达到switchButton这样的效...
  • qq_29695345
  • qq_29695345
  • 2017-03-25 16:33:03
  • 723

【Unity】字符串枚举类型switch使用方法

public enum EnemyType { Enemy0, Enemy1 } //根据策划选择的敌人类型 这里面会进行不同的敌人AI switch(enemyType) { case...
  • BuladeMian
  • BuladeMian
  • 2017-02-25 17:38:31
  • 1523

C# 使用枚举数 避免使用switch语句

当我们定义了一个枚举类型后,通常要根据枚举数的取值来决定如何操作,所以通常要使用switch来判断枚举数的值。 但是,有些情况下,可以不使用枚举数,而是使用数组来实现。这是由枚举数常量与int常量一...
  • czlilove
  • czlilove
  • 2014-03-25 10:54:36
  • 1365

unity3d输入与控制——键盘事件

在游戏中,玩家控制主角移动,按键攻击,选择行走。都需要在程序中监听玩家的输入。unity为开发者提供了input库,来支持键盘事件,鼠标事件以及触摸事件。本文主要回顾键盘事件,以后会逐文复习鼠标以及触...
  • cbbbc
  • cbbbc
  • 2016-04-26 16:24:38
  • 8631

Unity UGUI基础之Toggle

Toggle组合按钮(单选框),可以将多个Toggle按钮加入一个组,则他们之间只能有一个处于选中状态(Toggle组合不允许关闭的话)。 一、Toggle组件: Toggle大部分属性等同...
  • qq992817263
  • qq992817263
  • 2016-06-24 17:07:55
  • 18391

C#中一种替换switch语句更优雅的写法

今天在项目中遇到了使用switch语句判断条件,但问题是条件比较多,大概有几十个条件,满屏幕的case判断,是否有更优雅的写法替代switch语句呢? 假设有这样的一个场景:商场经常会根据情...
  • zhanglong_longlong
  • zhanglong_longlong
  • 2015-11-18 14:19:41
  • 1433

.net(枚举和switch结构)

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespac...
  • haifengzhilian
  • haifengzhilian
  • 2012-07-10 08:36:39
  • 1967

关于enum应用的总结

1、关于enum的定义 ///     /// 新闻、下载资源等的审核状态    ///     public enum ApplyStatus    {        ///         ///...
  • zhoufoxcn
  • zhoufoxcn
  • 2007-12-26 00:02:00
  • 3971
收藏助手
不良信息举报
您举报文章:蓝鸥Unity开发基础——Switch语句学习笔记
举报原因:
原因补充:

(最多只允许输入30个字)