百度试题 结果1 题目Java中Switch..case..语句是否能作用在byte、char、long和String上 相关知识点: 试题来源: 解析 答: Switch只能针对整数表达式,所以int和char可以,而byte可以组成int,所以也可以。 long和string不可以。反馈 收藏
答案: 在 switch(expr1)中,expr1只能是一个整数表达式或者枚举常量(更大字体),整数表达式可以是int基本类型或Integer包装类型,由于,byte,short,char都可以隐含转换为int,所以,这些类型以及这些类型的包装类型也是可以的。显然,long和String类型都不符 合switch的语法规定,并且不能被隐式转换成int类型,所以,它们不能...
switch语句可以作用于byte类型,因为byte类型可以隐式转换为int。 switch语句不能作用于long类型,因为long类型不能隐式转换为int。 从JDK 1.7 开始,switch语句可以作用于String类型。
switch能作用在byte上,不能作用在long上,从Java7开始可以作用在String上。 本题考察的是switch知识。 switch语句用于多分支选择,在使用switch(expr)时,expr只能时一个枚举常量(内部也是由整形或字符类型实现)或一个整数表达式, 其中,整数表达式可以是基本数据类型int或其对应的包装类Integer,当然也包括不同的长度整形...
不能作用在long、double、float、boolean及其对应的包装类 JDK1.7后可以作用在string上 switch中可以是枚举类型 代码语言:javascript 复制 packagecom.beginmind.javainstancemaster;/** * 测试switch中的表达式是否可以是byte、string、short、char * @author JaneYork ...
答案:switch能作用在byte、int、enum常量, 补充:jdk7可以作用在String上 2、short s = 1; s = s + 1;有什么错? short s = 1; s += 1;有什么错? 答案: s = s + 1; 在计算右边的表达式时,隐式的将s转换为int,将一个int类型赋值给short出错,必须强制转换,即: s = (short)(s+1); 而s+...
switch 能否作用在 byte 上? 答案是:可以! 因为byte 是整数类型的一种,而 switch 在 JDK 1.4 及之后版本都支持整数类型,所以 byte 完全没问题。来看个简单的例子: 运行结果:这是 case 2 这里需要注意的是,case 的值必须在 byte 的范围内(-128 到 127),否则会报编译错误。
switch(表达式),表达式的内容为整数表达式或枚举常量,整数表达式即为int或integer型,因为byte、short、char都可以转换成整型,而string、long不可以,所以switch能作用在byte上而不能作用在long和string上
byte a = 0; // 可以作用在switch char b = ' '; // 可以作用在switch short c = 0; // 可以作用在switch int d = 0; // 可以作用在switch String e = ""; // 可以作用在switch long f = 0L; // 不可以作用在switch float g = 0.0f; // 不可以作用在switch double h = 0.0; /...
和 case 语句的参数应该是 int、 short、 char 或者 byte。long,string 都不能作用于swtich。