什么是数字促销?

时间:2009-02-23 01:42:44

标签: java

任何人都可以告诉什么是数字推广吗?

4 个答案:

答案 0 :(得分:19)

数字提升是将较小的数字类型转换为较大的数字类型,以便可以进行整数和浮点运算。在数字提升中,byte,char和short值将转换为int值。如有必要,int值也会转换为long值。根据需要,long和float值将转换为double值。

答案 1 :(得分:2)

数字促销规则

  1. 如果两个值具有不同的数据类型,Java将自动将其中一个值提升为两种数据类型中较大的一种。

  2. 如果其中一个值是整数而另一个是浮点值,则Java会自动将积分值提升为浮点值的数据类型。

  3. 较小的数据类型,即byte,short和char,只要它们与Java二进制算术运算符一起使用,就会首次提升为int,即使这两个操作数都不是int。

    < / LI>
  4. 发生所有促销并且操作数具有相同的数据类型后,结果值将与其提升的操作数具有相同的数据类型

答案 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乘以浮点数。整数被提升为浮点数,因此乘以的结果是浮点数。