string strs3 = Console.ReadLine();
            int i = Convert.ToInt32(strs3);
            switch (strs3)
            {
                case strs3:
            }
那个提示窗口说;应输入常量的值
 
请问 case 的常量值 要怎么写?

解决方案 »

  1.   

    有确定值,case必须是常量,str可以当switch 做条件,不能当结果
      

  2.   

    case后面要跟常量··比如你输入1 就是case 1
      

  3.   

    string strs3 = Console.ReadLine();
      int i = Convert.ToInt32(strs3);
      switch (strs3)          //这里是输入的值
      {
      case strs3:             //这里应该指定一个常量值,如case "A" . . . .
      }
    解释一下switch 语句switch主要用于多情况判断;举个例子
    当你想根据你的输入值,如果输入A则执行A方法,如果输入B则执行B方法,如果输入Q则退出程序
    string strs3 = Console.ReadLine();
      switch (strs3)          //这里是输入的值
      {
      case "A":
          methodA();
          break; 
      case "B":
          methodB();
          break;        
      case "Q"
          exit();
          break;
      default:         //这里指定其他输入值下所执行的
          methodX();
      }
    解释一下里面的break
       例如你想让输入A和输入B的情况下,都执行methodB的话你可像下面那样子写
    . . .
     case "A":
          methodA();
     //在这边去掉原来的break,可以去搜索一些资料扩展
      case "B":
          methodB();
          break;
    . . .
    其实switch语句与if(...){} else if(..){}else{}语句功能类似;只是switch 语句更直观;
    如果转换成if else if语句如下
    if(str3=="A"){
        methodA();
    }else if(str3=="B"){
        methodB();
    }else if(str3=="Q"){
        exit();
    }else{
        methodX();
    }扩展一下switch经常与枚举结合使用,就是将各种情况封装在一个枚举中,然后调用;