任何人都可以告诉什么是数字推广吗?
答案 0 :(得分:19)
数字提升是将较小的数字类型转换为较大的数字类型,以便可以进行整数和浮点运算。在数字提升中,byte,char和short值将转换为int值。如有必要,int值也会转换为long值。根据需要,long和float值将转换为double值。
答案 1 :(得分:2)
数字促销规则
如果两个值具有不同的数据类型,Java将自动将其中一个值提升为两种数据类型中较大的一种。
如果其中一个值是整数而另一个是浮点值,则Java会自动将积分值提升为浮点值的数据类型。
较小的数据类型,即byte,short和char,只要它们与Java二进制算术运算符一起使用,就会首次提升为int,即使这两个操作数都不是int。
< / LI>发生所有促销并且操作数具有相同的数据类型后,结果值将与其提升的操作数具有相同的数据类型
答案 2 :(得分:1)
数字促销是将操作数(至少涉及的一个数字)转换为通用类型。
例如:
int i = 10;
double d1 = 2.5;
double d2 = d1 * i;
在这种情况下,i被提升为double,因此可以执行计算。在某些方面,你可以认为这类似于拳击,但拳击涉及从结构移动到对象(从堆栈到堆)。但是,使用这个类比确实可以确定积分值被用作浮点来执行计算。
答案 3 :(得分:0)
If you look here,您会看到以下引用:
数字促销(§5.6)带来了 数字运算符的操作数到 常见的类型,以便操作可以 被执行。
他们是referencing this section,他们提供了各种例子。典型的例子是int乘以浮点数。整数被提升为浮点数,因此乘以的结果是浮点数。