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;
注意点:
- 只能针对基本数据类型使用switch,这些类型包括int、char、string等。
- case标签必须是常量表达式(constantExpression),如42或者"42"。
- 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语句来替代它。
C# 语法技巧_三目运算_switch_case的更多相关文章
- 三目运算:and/or 技巧
三目运算:and/or 技巧 and, or 联合起来有个小技巧: print 2 < 3 and True or False 说明: 如果 2 小于 3 了,则输出 True , ...
- set集合玩法、三目运算
set是无序的,无法用下标获取值 创建set二种方式 1.第一种 s1=set() #创建一个空的set,看下面就知道为什么要这么创建一个空的集合 2.第二种 s2={11,22,33,44} # ...
- Python—三目运算
Python 可通过 if 语句来实现三目运算的功能,因此可以近似地把这种 if 语句当成三目运算符.作为三目运算符的 if 语句的语法格式如下: (True_statements) if (expr ...
- 第4.8节 三目运算、del和pass语句
一.三目运算 Python的三目运算与C语言的三目运算非常类似,具体语法如下: 条件为真的赋值表达式 if 条件 else 条件为假的表达式 三目运算实际上就是一种表达式计算,当对应if后面 ...
- ng-class结合三目运算
ng-class文档:https://docs.angularjs.org/api/ng/directive/ngClass 但是在实际项目中可能会用到三目运算,实例如下: <ul> &l ...
- angularjs的三目运算
前言:前几天写代码的时候遇到一个问题,有一个按钮,有"已关注"和"+关注"两种状态,需要对这两种状态的按钮的背景颜色进行区分,单后点击"已关注&quo ...
- 【Python全栈笔记】03 [模块二] 16-17 Oct Set 集合,三目运算
Set 集合 set - unordered collections of unique elements 创建一个set/一个空set # create a new set set1 = {1,2, ...
- python函数,lambda表达式,三目运算,列表解析,递归
一.自定义函数 定义函数时,函数体不执行:只有在调用函数时,函数体才执行.函数的结构: 1. def 2. 函数名 3. 函数体 def func_name(): 函数体 4. 返回值 如果没有声明返 ...
- 三目运算的使用&bytes类型转str类型
一.三目运算的使用 就像c语言中有三目运算符一样,python中也有三目运算符,废话不多说直接上代码 a=3 c=4 b=a if a>c else c print(b) 意思就和 if a&g ...
随机推荐
- Android Listview异步动态加载网络图片
1.定义类MapListImageAndText管理ListViewItem中控件的内容 package com.google.zxing.client.android.AsyncLoadImage; ...
- [置顶] Android四大组件之BroadcastReceiver
Android四大组件之BroadcastReceiver Broadcast Receiver 广播接收器,是一种负责接收广播消息并对消息做出响应的组件,和Service一样并不提供与用户交互的UI ...
- 编译型/解释型语言,什么时候用shell
编译型语言 很多传统的程序设计语言,例如Fortran.Ada.Pascal.C.C++和Java,都是编译型语言.这类语言需要预先将我们写好的源代码(source code)转换成目标代码(obje ...
- eclipse编辑工具小结
eclipse编辑工具小结 这两天从myeclipse转入eclipse,整体感觉不错,速度更快些,也没在出现各种意外的调试错误.不能断点等情况,并且对整个编辑环境的使用有了更深入的认识,再次对主要几 ...
- UVa 11401 三角形的个数
题意:由1,2,3...n组成的序列中找三个数,且以这三个数为变长能组成三角形,求这样的三角形个数. 思路:当每次输入n时重新都计算一遍会TLE...先预处理,将结果存入ans数组. 代码: #inc ...
- [置顶] java ant 配置及构建项目
Ant是一种基于Java的构建工具.Ant文件是配置构建目标过程的XML文件,也称为Ant脚本. (因为对这个不是很了解,所以用词方面可能于个人的理解有偏差 ...
- 【转】[总结]FFMPEG视音频编解码零基础学习方法
在CSDN上的这一段日子,接触到了很多同行业的人,尤其是使用FFMPEG进行视音频编解码的人,有的已经是有多年经验的“大神”,有的是刚开始学习的初学者.在和大家探讨的过程中,我忽然发现了一个问题:在“ ...
- [置顶] 【cocos2d-x入门实战】微信飞机大战之十二:分数的本地存储
转载请表明地址:http://blog.csdn.net/jackystudio/article/details/12036237 作为一个单机游戏,连分数存储的的功能都没有,让它怎么在单机游戏圈里混 ...
- 达到XML简单的动态配置
今天写的XML相关内容:随着上述眼前的小项目(等级类别)由于地图每个级别.因此,让他动态读取XML内容,这样的变化只能看到XML档. 简单的想法:第一次使用UserDefault类写入文件 UserD ...
- MySql命令——函数
1.拼接字段——Concata() 把多个串连接起来形成一个较长的串. select concat(value,'(',id,')') from test; 2.去掉空格 RTrim() 去掉右边的空 ...