]> source.dussan.org Git - sonarqube.git/blob
cdcfcc6892184d47614a0591de59291f30ed3542
[sonarqube.git] /
1 <p>
2       Using <code>new Integer(int)</code> is guaranteed to always result in a new object whereas
3       <code>Integer.valueOf(int)</code> allows caching of values to be done by the compiler, class library, or JVM.
4       Using of cached values avoids object allocation and the code will be faster.
5       </p>
6       <p>
7       Values between -128 and 127 are guaranteed to have corresponding cached instances
8       and using <code>valueOf</code> is approximately 3.5 times faster than using constructor.
9       For values outside the constant range the performance of both styles is the same.
10       </p>
11       <p>
12       Unless the class must be compatible with JVMs predating Java 1.5,
13       use either autoboxing or the <code>valueOf()</code> method when creating instances of
14       <code>Long</code>, <code>Integer</code>, <code>Short</code>, <code>Character</code>, and <code>Byte</code>.
15       </p>