繁体   English   中英

哪个更好:让Java进行自动装箱或使用valueOf()

[英]Which is better: letting Java do autoboxing or using valueOf()

我只是想知道让java autobox说一个整数有什么区别:

Integer myInteger = 3; // This will call Integer.valueOf()

或者你的代码是

Integer myInteger = Integer.valueOf(3);

这有什么微优化吗? 我知道第二个是更明确的,但它也是更不必要的打字,除了这个有什么区别吗?

无论如何它们在内部是相同的,所以使用第一个变体。 机会很好,未来的编译器优化可能会使未来的第一个更快。

我会使用第一选择。 用更少的代码来做同样的事情。

除非我希望该程序必须在较旧版本的JVM上运行。 但是,在这种情况下,这远非唯一的兼容性问题。

因此,不使用自动装箱的唯一原因是它不可用。

我知道,是不是真的有性能上的巨大差异看到这个帖子这里的差异是不是一个真正的差异,但你应该使用的valueOf,因为整数现在缓存-128到127之间的Integer对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM