如下:
Switch(a)
{
case "1":
b=1;
break;
case "2":
b=2;
break;
case "3":
b=3;
break;
}我想写成:Switch(a)
{
case "1","2":
b=12;
break;
case "3":
b=3;
break;
}为什么这样写不对?我想把多个条件写在一个case里应该怎么写?谢谢!
Switch(a)
{
case "1":
b=1;
break;
case "2":
b=2;
break;
case "3":
b=3;
break;
}我想写成:Switch(a)
{
case "1","2":
b=12;
break;
case "3":
b=3;
break;
}为什么这样写不对?我想把多个条件写在一个case里应该怎么写?谢谢!
解决方案 »
- 【网站路径】急。。。
- gridview不能更新
- 关于新浪微博的一些问题,求讨论,指教!
- asp.net 向oracle数据库插入值错误
- 搞了一些大家爱看有东西,但就.net和PHP之间有不得不说的事
- 100分问一个关于在asp.net ajax 中用JS调用webservice的复杂类型里出现数组的问题!
- 请问如何能实现这个在线QQ客服的效果?
- webapi怎么接收一个list类型的数据。。大虾们help。。
- 初学者问题,马上结贴!
- DataGrid在Web中应用问题!
- 高手们,请大家指点写一个访问控制的类,此类的实例可以设置几个属性,从而得到访问的权限。具体如下说明:
- 请问各位,版主哪有System.Data.AseClient,急啊,在线等
{
case "1":
case "2":
b=12;
break;
case "3":
b=3;
break;
}
这样写在一块吗?
我觉得代码也简洁不到那里去啊还是用switch正常的用法吧,别钻牛角了^^
{
case "3":
b=3;
break;
case else:
b=12;
break;
}
例如:Switch(a)
{
case "1":
goto case "1";
case "2":
goto case "2"
case "3":
b=3;
break;
}
{
case "1":
goto case "2";
case "2":
goto case "3"
case "3":
b=3;
break;
}
及差的可读性,
Switch(a)
{
case "1":
case "2":
b=12;
break;
case "3":
b=3;
break;
}不是可以实现所要得到的功能吗,为什嬷要搞的那嬷复杂
swith(a)
{
case 3:
b=3
case else
b=12;
}
简单不其实如果你是可以考虑定义成Enmu类型的
c#与c,c++不一样的
如果只有1,2,3,那么 andy1126 的也没错啊!看看 C# 的语法参考不就解决了?!
C# 关键字 | 与 C++ 比较 | if | C. 语法
switch 语句是一个控制语句,它通过将控制传递给其体内的一个 case 语句来处理多个选择。它的形式为:switch (expression)
{
case constant-expression:
statement
jump-statement
[default:
statement
jump-statement]
}
其中: expression
一个整型或字符串型表达式。
statement
控制传递给 case 或 default 时执行的嵌入语句。
jump-statement
将控制传递到 case 体外部的跳转语句。
constant-expression
根据此表达式的值将控制传递给特定的 case。
备注
控制传递给 constant-expression 与 expression 匹配的 case 语句。switch 语句可以包含任意数量的 case 实例,但同一 switch 语句中的两个 case 常数不能具有相同的值。语句体从选定的语句开始执行,一直执行到 jump-statement 将控制传递到 case 体之外为止。请注意,每个块(包括最后一个块,不管它是 case 语句还是 default 语句)后都要有 jump-statement。与 C++ switch 语句不同,C# 不支持从一个 case 标签显式贯穿到另一个 case 标签。如果要使 C# 支持从一个 case 标签显式贯穿到另一个 case 标签,可以使用 goto 一个 switch-case 或 goto default。如果 expression 不匹配任何 constant-expression,则控制传递给可选的 default 标签后面的 statement。如果没有 default 标签,则控制传递到 switch 之外。示例
// statements_switch.cs
using System;
class SwitchTest
{
public static void Main()
{
Console.WriteLine("Coffee sizes: 1=Small 2=Medium 3=Large");
Console.Write("Please enter your selection: ");
string s = Console.ReadLine();
int n = int.Parse(s);
int cost = 0;
switch(n)
{
case 1:
cost += 25;
break;
case 2:
cost += 25;
goto case 1;
case 3:
cost += 50;
goto case 1;
default:
Console.WriteLine("Invalid selection. Please select 1, 2, or 3.");
break;
}
if (cost != 0)
Console.WriteLine("Please insert {0} cents.", cost);
Console.WriteLine("Thank you for your business.");
}
}
输入
2
示例输出
Coffee sizes: 1=Small 2=Medium 3=Large
Please enter your selection: 2
Please insert 50 cents.
Thank you for your business.
代码讨论
在前面的示例中,整型变量 n 用于 switch case。注意还可以直接使用字符串变量 s。在这种情况下,可以以下列方式使用 switch case:
switch(s)
{
case "1":
...
case "2":
...
}
虽然从一个 case 标签到另一个 case 标签的贯穿不受支持,但可以堆栈 case 标签,例如:
case 0:
case 1:
// do something;
请参见
C# 关键字 | 与 C++ 比较 | if | C. 语法--------------------------------------------------------------------------------向 Microsoft 发送有关此主题的反馈© Microsoft Corporation。保留所有权利。
回复人: popcorn(米花)
条件语句
if(bool position){} else {}
if(bool position){} else if{} ... else{}
switch(object)
{
case value:
...
default:
}
条件付值:a=(bool position?valuea:valueb)循环语句:
for(){}
foreach(){}虽然是enumerator的简写方式,但也可以算作是循环
while{}
是case 1: case 2:case 3: fregfsg;
case 4:fa;
case 5:faf;......
除此不能简了