Java:我应该使用float还是Float?

Dáv*_*gga 9 java floating-point object primitive-types

我的同事告诉我,我应该尽可能使用float来减少对象的创建并提高性能.只要有必要,Java就会默默地将float转换为Float(这需要一些计算能力).因此在我看来,Float的唯一需求是当需要经常使用Float对象而不是它的原始对象时.

在查看java.awt.color时,它正在使用Float,可能是不必要的.

什么时候需要在Java中更喜欢Float over float?

Woo*_*Moo 8

对象 Float可以被设置为空来表示一个值,该值是未知的.
原语 float是保证有一个值.

自动装箱有一些开销,但这可以忽略不计.你仍然必须为原语分配空间,这样你就没有任何收获.

  • 根据定义,float是4个字节.引用需要4-8个字节(32/64位引用).对象头是12到16个字节(32/64位),必须与8个字节对齐.它们不能直接比较,因为浮动单独不使用堆并且浮点数在堆上.所以在堆使用方面浮点数:0,浮点数是16-24字节.太多引用挖掘;) (5认同)
  • @PeterLawrey今天我学到了. (2认同)