byte可以,long,String不行原因:在switch(expr1)中,expr1只能是一个整数表达式或者枚举常量(更大字体),整数表达式可以是int基本类型或Integer包装类型,由于,byte,short,char都可以隐含转换为int,所以,这些类型以及这些类型的包装类型也是可以的。显然,long和String类型都不符合switch的语法规定,并且不能被隐式转换成int...
下面的说法正确的选项是〔〕 A. byte ,short,char 数据类型可以自动转化为int B. float 数据类型可以自动转换为long。 C. byte a=
可以是int 基本类型或Integer 包装类型,由于,byte,short,char 都可以隐含转换为int,所以这些类型以及这些类型的包装类型也是可以的。显然long 和String 类型都不符合switch 的语法规定,并且不能被隐式转换成int 类型,所以它们不能作用于swtich 语句中。switch中可以是字符串类型,String(JDK1.7之后才可以作用在string上)...
java虚拟机规范并没有指出变量槽的具体占用空间,只是每个变量槽都应该能存放一个boolean,byte,char,short,int,float,reference和returnAddress类型的数据.这8种数据类型都是以32位或者更小的内存来存储的.但这种描述和每个变量槽用32位来存储是有差别的,它允许变量槽随着环境的变化而变化. Java每个方法在JVM中对应一...
byte可以自动转为short char不能转为short(因为char是没有负数的,而short是有负数的,所以char不能转为short)char可以转为int char可以直接用数字赋值:范围0-65535 byte short不能自动转为char byte,short,char做运算时,得到的结果时int类型(包括自己和自己做运算)这是因为这三者在做运算的时候很容易超出自身...
1) boolean类型不参与转换 2) 默认转换 A:从小到大 B:byte,short,char --» int --» long --» float --» double C:byte,short,char之间不相互转换,直接转成int类型参与运算。 3) 强制转换 A:从大到小 B:可能会有精度的损失,一般不建议这样使用。
i_Int = (int)d_Double;s_Short = (short)i_Int;i_Int = (int)l_Long;Boolean bool_Boolean=true;//i_Int = (int)bool_Boolean; 不可转换 byte[] b_Array = new byte[b_Byte];char[] c_Array = new char[b_Byte];// b_Array = (byte)c_Array; 一个是数组类型,一个...
你说错了好吧,应该是byte、short、char—gt;int—gt;float—gt;double—gt;long_牛客网_牛客在手,offer不愁
short,char ,int以及枚举(enum),所以当表达式是byte的时候可以隐含转换为int类型,而long字节比int字节多,不能隐式转化为int类型,所以switch语句可以用在byte上而不可以用在long上,另外由于在JDK7.0中引入了新特性,所以witch语句可以接收一个String类型的值,String可以作用在switch语句上 ...
short: short 数据类型是 16 位、有符号的以二进制补码表示的整数 最小值是 -32768(-2^15); 最大值是 32767(2^15 - 1); Short 数据类型也可以像 byte 那样节省空间。一个short变量是int型变量所占空间的二分之一; 默认值是 0; 例子:short s = 1000,short r = -20000。