首页 > 代码库 > 语法技巧(三目运算符、switch...case...)
语法技巧(三目运算符、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语句来替代它。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。