C#switch语句限制-为什么?

C#switch语句限制-为什么?

在编写switch语句时,在case语句中可以打开什么看起来有两个限制。 例如(是的,我知道,如果你正在做这种事情,这可能意味着你object-oriented(OO)体系结构是有限的-这只是一个人为的例子!), Type t=typeof(int); switch(t){case typeof(int): Console.WriteLine("…


C#开关:案件不受其他案件的限制

这个问题是这个问题的一个附加 在C#中,一个开关的情况下不能通过其他情况下,这会导致编译错误。 在这种情况下,我只是在所选的月份和此后的每个月份的月份总数中添加一些数字。(简单的例子,并不意味着是真实的) switch(month){case 0: add something to month totals case 1: add someth…


替代Python中的switch语句?

我想在Python中编写一个函数,它根据输入索引的值返回不同的固定值。 在其他语言中,我会使用switch或case语句,但Python似乎没有switch语句。 在这种情况下推荐的Python解决方案是什么?…



c# - switch语句中有多个case

有没有办法通过多个案例陈述而没有陈述case value:反复? 我知道这是有效的: switch(value){case 1: case 2: case 3://do some stuff break; case 4: case 5: case 6://do some different stuff…


c# - 切换PropertyType

我怎样才能做这个工作? switch(property.PropertyType){ case typeof(Boolean)://doStuff break; case typeof(String)://doOtherStuff break; default: break;}我不想使用这个名字…


Ruby中的“for”是什么?

在Ruby中: for i in A do#some code end 是相同的: A.each do |i|#some code end for不是内核方法: 什么是“红宝石” 有没有办法使用其他关键字来做类似的事情? 就像是: total=sum i in I{x[i]} 映射到: total=I.sum{|i] x[i]}…


c# - 开关/模式匹配的想法

我最近一直在研究F#,尽管我不太可能马上跳过栅栏,但它肯定会突出显示C#(或库支持)可以使生活更轻松的一些领域。 特别是,我正在考虑F#的模式匹配功能,它允许使用非常丰富的语法-比当前的开关/条件C#等价物更具表达力。 我不会试图给出一个直接的例子(我的F#不符合它),但总之它允许: 按类型匹配(对歧视联盟进行全覆盖检查)[注意这也推断了绑定变量的类型,赋予成员访问等] 按谓词匹配…


在C#中切换语句贯穿始终?

切换语句贯穿是我爱的switch与if/else if结构之间的个人主要原因之一。 下面是一个例子: static string NumberToWords(int number){string[] numbers=new string[]{"", "one", "two", "three", "four", "five", "six",…


c++ - 开关情况下vs如果其他

这个问题在这里已经有了答案: 切换if-else语句 23的 好处 我想知道下面的代码编译成汇编的方式是否有任何不同。 我听说switch-case比其他的更有效率,但是在这个例子中,我不太确定是否会这样。 if(x==1){...}else if(x==2){...}else{...}和 switch(x){ case 1:... break; case 2:…


C#switch语句中的变量声明

为什么在C#switch语句中,对于在多种情况下使用的变量,只能在第一种情况下声明它? 例如,以下内容将引发错误“已在此范围内定义了一个名为'变量'的局部变量”。 switch(Type){case Type.A: string variable="x"; break; case Type.B:…




switch case switch函数 string java case用法 c语言 switch怎么用 switch语句 if语句