之前经常见到面试题上问 switch(type)中type类型或者下列哪些可以使用,自己知识存在模糊的一个印象,考猜测寻找结果,未能知道实质性的东西,偶然看到一个面试题的答案,豁然开朗,可以通过自己的分心来完成,还可以描述原因,下边是对swith的描述:
switch语句能否作用在byte上,能否作用在long上,能否作用在String上?
在switch(expr1)中,expr1只能是一个整数表达式或者枚举常量(更大字体)或者是字符型的,整数表达式可以是int基本类型或Integer包装类型,由于,byte,short,char都可以隐含转换为int,所以,这些类型以及这些类型的包装类型也是可以的。显然,long和String类型都不符合switch的语法规定,并且不能被隐式转换成int类型,所以,它们不能作用于swtich语句中。
分享到:
相关推荐
### 枚举类型在switch语句中的用法 在编程语言中,枚举(Enum)是一种数据类型,它由一组固定的常量组成,通常用于表示有限的预定义值集。枚举类型的使用可以让代码更加清晰易读,并且有助于减少错误的发生。在本篇...
Java 枚举类型在 switch 语句正确使用方法详解 Java 枚举类型是 Java 语言中的一种特殊类型,用于定义一组具有一些公共特征的常量。Java 枚举类型在 switch 语句中的正确使用方法是本文的主要内容。通过示例代码,...
在 Java 7 之前,switch 语句只能使用整数类型(byte、short、char、int)或枚举类型作为条件表达式。但是,从 Java 7 开始,switch 语句也支持使用 String 类型作为条件表达式。 在 Java 7 之前,如果我们尝试使用...
由于`score/10`的结果是`double`类型,这将导致编译错误,如错误信息`error C2450: switch expression of type 'double' is illegal`所示。 为了解决这个问题,我们需要确保`switch`后面的表达式是整型。一种方法是...
在实际开发过程中,枚举常用于定义一组预设的状态、类型或者方向等选项,而`switch`语句则用于根据这些选项来执行相应的逻辑分支。 除了基础的使用,C#中的枚举还支持高级特性,如为枚举成员定义属性、枚举与接口的...
在Golang中,`switch`语句有两种形式:表达式`switch`和类型`switch`。 1. **表达式`switch`**: 表达式`switch`通常用于比较一个值与一系列可能的值。在每个`case`中,Golang会从上到下依次检查每个`case`的...
switch语句可以让一个变量对反对值的列表平等进行测试。每个值被称为一个的情况(case),变量被接通检查每个开关盒(switch case)。...switch(boolean-expression or integral type){ case boolean-expression or
除了基本的值匹配外,`switch`语句还可以用于判断接口变量中实际存储的类型,这被称为“Type Switch”。它在处理多态时非常有用。 Type Switch的语法如下: ```go switch x.(type) { case type: // 当x的类型为...
标题"Go-支持大多数Go内置类型转换不使用反射通过类型断言开关"指的是,通过类型断言和switch语句,可以避免使用反射进行大部分Go内置类型的转换。这种方法通常适用于已知可能转换的目标类型的情况,从而避免了反射...
全面掌握 Java 枚举类型(enum type) Java 枚举类型是一种特殊的数据类型,它可以取有限个数的明确值。枚举类型的引入解决了 int 枚举模式和 String 枚举模式的缺点,提供了类型安全性、可读性和性能等优势。 ...
2. **类型限制**:`switch`表达式必须是可比较的类型,包括枚举(`enum`)、整型(`int`、`byte`、`short`、`long`)、字符(`char`)、字符串(`string`)以及`enum`类型的`System.TypeCode`。 3. **值匹配**:每...
- **break语句**:用于提前退出当前循环或switch语句。 - **continue语句**:跳过当前循环体剩余部分,进入下一次循环。 4. **嵌套结构** - 流程控制语句可以相互嵌套,例如在循环内部使用if语句,或者在if语句...
本算法定义声明了两个结构体:一个是Node结构体,其中char型的type中存储当前符号的类型,CString型的sValue中存储的为当前符号,int型的eValue只有在符号类型为数字的情况下才进行存储,存储数字的大小;...
`isdn switch-type`定义ISDN交换机类型,中国通常使用`basic-net3`。 7. 配置Frame Relay: `encapsulation frame-relay`启用帧中继封装,可选`cisco`或`ietf`模式。`frame-relay lmi-type`设置链路管理协议(LMI...
ISDN(Integrated Services Digital Network)配置涉及交换机类型,如在中国通常使用`isdn switch-type basic-net3`。配置完成后,可以连接到ISDN网络。 Frame Relay是广域网(WAN)中常见的分组交换技术。配置包括...
JavaScript中的条件语句是编程中不可或缺的部分...通过使用数组方法、提前返回、`switch`语句以及短路运算符,可以编写出更加高效且易于理解的条件逻辑。在实践中不断探索和应用这些技巧,可以提升代码质量和开发效率。
首先,让我们了解一下JavaScript中的`switch`语句。在编程中,`switch`是条件控制结构的一种,它允许执行多个不同块的代码,具体取决于一个变量的值。在JavaScript中,`switch`语句的语法如下: ```javascript ...
首先,`switch`语句是C#中的多路选择结构,它允许程序基于一个表达式的值执行不同的代码块。基本语法如下: ```csharp switch (expression) { case value1: // code block to be executed if expression == value...
`isdn switch-type Swith-Type`设置ISDN交换机类型,中国的常见类型为basic-net3。ISDN配置通常还包括对BRI接口的配置,如`interface bri 0`。 7. **配置Frame Relay**: `encapsulation frame-relay`启用帧中继...