首页 > 试题广场 >

对于java类型变量char c,short s,float

[单选题]
对于java类型变量char c,short s,float f,double d,表达式c*s+f+d的结果类型为()
  • float
  • char
  • short
  • double
推荐
自动类型转换遵循下面的规则:
1.若参与运算的数据类型不同,则先转换成同一类型,然后进行运算。
2.转换按数据长度增加的方向进行,以保证精度不降低。例如int型和long型运算时,先把int量转成long型后再进行运算。
3.所有的浮点运算都是以双精度进行的,即使仅含float单精度量运算的表达式,也要先转换成double型,再作运算。
4.char型和short型参与运算时,必须先转换成int型。
5.在赋值运算中,赋值号两边的数据类型不同时,需要把右边表达式的类型将转换为左边变量的类型。如果右边表达式的数据类型长度比左边长时,将丢失一部分数据,这样会降低精度。
下图表示了类型自动转换的规则:

编辑于 2016-11-05 14:21:34 回复(13)
更多回答
char 2字节 short 2字节 float 4字节 double 8字节
往精度高的转
发表于 2016-11-08 15:21:16 回复(0)
选D(高票的图有问题)
基本数据类型的运算,会自动向上转型。boolean不可以和其他基本数据类型相互转换。
byte->short,char -> int -> long      
float -> double
int -> float
long -> double
编辑于 2018-07-06 09:14:44 回复(2)
自动类型转换遵循下面的规则:
1.若参与运算的数据类型不同,则先转换成同一类型,然后进行运算。
2.转换按数据长度增加的方向进行,以保证精度不降低。例如int型和long型运算时,先把int量转成long型后再进行运算。
3.所有的浮点运算都是以双精度进行的,即使仅含float单精度量运算的表达式,也要先转换成double型,再作运算。
4.char型和short型参与运算时,必须先转换成int型。
5.在赋值运算中,赋值号两边的数据类型不同时,需要把右边表达式的类型将转换为左边变量的类型。如果右边表达式的数据类型长度比左边长时,将丢失一部分数据,这样会降低精度。
下图表示了类型自动转换的规则:
 
发表于 2016-12-13 11:22:27 回复(1)
低级向高级是隐式类型转换,高级向低级必须强制类型转换,byte<char<short<int<long<float<double
发表于 2017-09-12 14:51:31 回复(0)
转化成精度最高的数据类型。
发表于 2016-05-20 14:38:25 回复(0)
发表于 2022-03-06 19:48:47 回复(0)
为什么4个字节的float会比8个字节的long还大?这就涉及到浮点数在内存中的存储了,float类型4个字节,32位,第1位是符号位(数符),即S,接下来的8位是指数域(阶码),即E,最后的23位,是小数域(尾数),即M。对于一个十进制数112.5,我们用科学计数法表示就是1.125*10^2,所以呢,对于一个二进制数,我们的表示就应该是1.XXX* 2^X,由于第一位永远都是1所以直接省去,因此表示为S.M*2^E。所以float的取值范围是-2^128到2^128,远远大于long的最大值。 所以java中long类型自动转换为float类型。 ps:由于用手机写的,没法加图,可以去自己去试试long和float的最大值看看
发表于 2019-04-24 08:51:58 回复(0)
发表于 2020-11-14 14:51:50 回复(0)
转换成精度高的类型进行计算,但是当只有char short byte进行计算时,统一转换为int进行计算
发表于 2022-06-03 14:01:24 回复(0)
自动类型转换遵循下面的规则: 总结: char和short类型参与运算会自动转型为int 浮点类型运算要以双精度运算,会转为double 自动类型转换,回想数据长度增加方向进行,保证精度 特殊赋值运算,右边类型转左边类型,不计精度 1.若参与运算的数据类型不同,则先转换成同一类型,然后进行运算。 2.转换按数据长度增加的方向进行,以保证精度不降低。例如int型和long型运算时,先把int量转成long型后再进行运算。 3.所有的浮点运算都是以双精度进行的,即使仅含float单精度量运算的表达式,也要先转换成double型,再作运算。 4.char型和short型参与运算时,必须先转换成int型。 5.在赋值运算中,赋值号两边的数据类型不同时,需要把右边表达式的类型将转换为左边变量的类型。如果右边表达式的数据类型长度比左边长时,将丢失一部分数据,这样会降低精度。
发表于 2021-06-01 00:16:46 回复(0)
char 2字节 short 2字节 float 4字节 double 8字节
往精度高的转
发表于 2019-07-25 16:45:49 回复(0)
转换规则:从存储范围大的类型到存储范围小的类型。
double>float>long>int>short>char>byte
发表于 2017-08-18 13:29:21 回复(1)
报错不可到达 的语句,题目也是两个返回,我选的编译不通过错了
编辑于 2024-03-23 12:40:56 回复(0)
低优先级到高优先级转换是隐式的,高优先级到低优先级转换必须强制转。 double>float>long>int>short>char>byte
发表于 2023-08-25 10:30:10 回复(0)
参与运算的数据类型不同,会往高精度的数据类型转
发表于 2022-07-22 17:15:14 回复(0)
所有的浮点运算都是以双精度进行的,即使仅含float单精度量运算的表达式,也要先转换成double型,再作运算。那这是最后的结果是double类型还是float类型
发表于 2021-04-01 20:46:50 回复(0)
<p>char 和short转成int、 int转成double.</p><p>float 转成double</p><p>最后为double</p>
发表于 2020-12-19 11:56:25 回复(0)
解析
发表于 2020-10-19 12:32:57 回复(0)
低优先级到高优先级转换是隐式的,高优先级到低优先级转换必须强制转。
double>float>long>int>short>char>byte
发表于 2020-04-07 22:00:14 回复(0)
需要注意char会转换为int类型。其它的几种转换大部分人都会。
发表于 2019-09-09 15:01:40 回复(0)