zoukankan      html  css  js  c++  java
  • C# 语法技巧_三目运算_switch_case

    一、三目运算符

      三目运算符的一种简便写法:

    bool b = str == "abc" ? false : true;

      当是自身时,实际上别吝啬那一个括号,有一个括号,实际上更容易一看就看懂:

     int i = 0;
     i = (i == 0) ? 1 : 0;

       实际上这样的代码更好看:

    bean.BlogCloud_Url = i > 1 ? BlogCloud_Url : BlogCloud_Url + "&page=" + i;

    二、switch...case...

      switch...case...语法和if...else...的作用一样,但是简洁很多,switch...case...的例子和注意点如下:

    复制代码
        class Program
        {
            static void Main(string[] args)
            {
                string str = "2";
                for (int i = 0; i < 10; i++)
                { 
                    switch (str)
                    {
                        case "1" :
                            Console.WriteLine("第一次");
                            break;
                        case "2" :
                            Console.WriteLine("第二次");
                            break;
                        default :
                            Console.WriteLine("你好");
                            break;
                    }
                }
    
                Console.ReadKey();
            }
        }
    复制代码

      对于以上代码,实际上输出的是 十次 "第二次"。break与外面的for循环无关,只和switch有关,用于阻止贯穿。另外default:后面必须要加break;

      注意点:

    1. 只能针对基本数据类型使用switch,这些类型包括int、char、string等。
    2. case标签必须是常量表达式(constantExpression),如42或者"42"。
    3. case标签必须是惟一性的表达式;也就是说,不允许两个case具有相同的值。

      可以连续写下一系列case标签(中间不能间插额外的语句),从而指定自己希望在多种情况下都运行相同的语句。如果像这样写,那么最后一个case标签之后的代码将适用于所有case。

    复制代码
        class Program
        {
            static void Main(string[] args)
            {
                string str = "2";
                for (int i = 0; i < 10; i++)
                { 
                    switch (str)
                    {
                        //1和2都输出第二次
                        case "1" :
                        case "2" :
                            Console.WriteLine("第二次");
                            break;
                        default :
                            Console.WriteLine("你好");
                            break;
                    }
    
                }
    
                Console.ReadKey();
            }
        }
    复制代码

     注意 break语句是用来阻止贯穿的最常见的方式,但也可以用一个return语句或者一个throw语句来替代它。

      

  • 相关阅读:
    Elasticsearch 安全功能现免费提供(从 6.8.0 和 7.1.0 版本开始)
    redis5.0.0安装
    java归并排序
    java Shell排序
    java折半插入排序
    java插入排序
    java快速排序
    Android onSaveInstanceState()
    Android Intent传递数据
    Android Intent的花样启动
  • 原文地址:https://www.cnblogs.com/mingxuantongxue/p/3791032.html
Copyright © 2011-2022 走看看