Use more efficient Long cache: Use "Long.valueOf(int)" instead of "new Long(long)"

git-svn-id: https://svn.apache.org/repos/asf/commons/proper/lang/trunk@1153487 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/main/java/org/apache/commons/lang3/math/NumberUtils.java b/src/main/java/org/apache/commons/lang3/math/NumberUtils.java
index 7bd3da5..3e3ac09 100644
--- a/src/main/java/org/apache/commons/lang3/math/NumberUtils.java
+++ b/src/main/java/org/apache/commons/lang3/math/NumberUtils.java
@@ -30,11 +30,11 @@
 public class NumberUtils {
     
     /** Reusable Long constant for zero. */
-    public static final Long LONG_ZERO = new Long(0L);
+    public static final Long LONG_ZERO = Long.valueOf(0L);
     /** Reusable Long constant for one. */
-    public static final Long LONG_ONE = new Long(1L);
+    public static final Long LONG_ONE = Long.valueOf(1L);
     /** Reusable Long constant for minus one. */
-    public static final Long LONG_MINUS_ONE = new Long(-1L);
+    public static final Long LONG_MINUS_ONE = Long.valueOf(-1L);
     /** Reusable Integer constant for zero. */
     public static final Integer INTEGER_ZERO = Integer.valueOf(0);
     /** Reusable Integer constant for one. */
@@ -398,7 +398,7 @@
     // Integer.valueOf(String)
     // new Double(String)
     // new Byte(String)
-    // new Long(String)
+    // Long.valueOf(String)
     // Long.getLong(String)
     // Long.getLong(String,int)
     // Long.getLong(String,Integer)
diff --git a/src/main/java/org/apache/commons/lang3/mutable/MutableLong.java b/src/main/java/org/apache/commons/lang3/mutable/MutableLong.java
index d651d93..59cf810 100644
--- a/src/main/java/org/apache/commons/lang3/mutable/MutableLong.java
+++ b/src/main/java/org/apache/commons/lang3/mutable/MutableLong.java
@@ -82,7 +82,7 @@
      * @return the value as a Long, never null
      */
     public Long getValue() {
-        return new Long(this.value);
+        return Long.valueOf(this.value);
     }
 
     /**
diff --git a/src/test/java/org/apache/commons/lang3/ArrayUtilsTest.java b/src/test/java/org/apache/commons/lang3/ArrayUtilsTest.java
index c4e29f2..edf2ca0 100644
--- a/src/test/java/org/apache/commons/lang3/ArrayUtilsTest.java
+++ b/src/test/java/org/apache/commons/lang3/ArrayUtilsTest.java
@@ -2551,12 +2551,12 @@
          
          assertTrue(Arrays.equals(
              new long[] {Long.MIN_VALUE, Long.MAX_VALUE, 9999999},
-             ArrayUtils.toPrimitive(new Long[] {new Long(Long.MIN_VALUE), 
-                 new Long(Long.MAX_VALUE), new Long(9999999)}))
+             ArrayUtils.toPrimitive(new Long[] {Long.valueOf(Long.MIN_VALUE), 
+                 Long.valueOf(Long.MAX_VALUE), Long.valueOf(9999999)}))
          );
 
          try {
-             ArrayUtils.toPrimitive(new Long[] {new Long(Long.MIN_VALUE), null});
+             ArrayUtils.toPrimitive(new Long[] {Long.valueOf(Long.MIN_VALUE), null});
              fail();
          } catch (NullPointerException ex) {}
      }
@@ -2570,13 +2570,13 @@
          
          assertTrue(Arrays.equals(
              new long[] {Long.MIN_VALUE, Long.MAX_VALUE, 9999999},
-             ArrayUtils.toPrimitive(new Long[] {new Long(Long.MIN_VALUE), 
-                 new Long(Long.MAX_VALUE), new Long(9999999)},1)));
+             ArrayUtils.toPrimitive(new Long[] {Long.valueOf(Long.MIN_VALUE), 
+                 Long.valueOf(Long.MAX_VALUE), Long.valueOf(9999999)},1)));
          
          assertTrue(Arrays.equals(
              new long[] {Long.MIN_VALUE, Long.MAX_VALUE, 9999999},
-             ArrayUtils.toPrimitive(new Long[] {new Long(Long.MIN_VALUE), 
-                 null, new Long(9999999)}, Long.MAX_VALUE))
+             ArrayUtils.toPrimitive(new Long[] {Long.valueOf(Long.MIN_VALUE), 
+                 null, Long.valueOf(9999999)}, Long.MAX_VALUE))
          );
      }
      
@@ -2591,9 +2591,9 @@
         assertTrue(
             Arrays.equals(
                 new Long[] {
-                    new Long(Long.MIN_VALUE),
-                    new Long(Long.MAX_VALUE),
-                    new Long(9999999)},
+                    Long.valueOf(Long.MIN_VALUE),
+                    Long.valueOf(Long.MAX_VALUE),
+                    Long.valueOf(9999999)},
             ArrayUtils.toObject(
                 new long[] { Long.MIN_VALUE, Long.MAX_VALUE, 9999999 })));
     }
diff --git a/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java b/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java
index 1093d75..07f70f2 100644
--- a/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java
+++ b/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java
@@ -187,10 +187,10 @@
         assertEquals("createNumber(String) 3 failed", new Double("1234.5"), NumberUtils.createNumber("1234.5d"));
         assertEquals("createNumber(String) 4 failed", new Float("1234.5"), NumberUtils.createNumber("1234.5F"));
         assertEquals("createNumber(String) 4 failed", new Float("1234.5"), NumberUtils.createNumber("1234.5f"));
-        assertEquals("createNumber(String) 5 failed", new Long(Integer.MAX_VALUE + 1L), NumberUtils.createNumber(""
+        assertEquals("createNumber(String) 5 failed", Long.valueOf(Integer.MAX_VALUE + 1L), NumberUtils.createNumber(""
             + (Integer.MAX_VALUE + 1L)));
-        assertEquals("createNumber(String) 6 failed", new Long(12345), NumberUtils.createNumber("12345L"));
-        assertEquals("createNumber(String) 6 failed", new Long(12345), NumberUtils.createNumber("12345l"));
+        assertEquals("createNumber(String) 6 failed", Long.valueOf(12345), NumberUtils.createNumber("12345L"));
+        assertEquals("createNumber(String) 6 failed", Long.valueOf(12345), NumberUtils.createNumber("12345l"));
         assertEquals("createNumber(String) 7 failed", new Float("-1234.5"), NumberUtils.createNumber("-1234.5"));
         assertEquals("createNumber(String) 8 failed", Integer.valueOf("-12345"), NumberUtils.createNumber("-12345"));
         assertTrue("createNumber(String) 9 failed", 0xFADE == NumberUtils.createNumber("0xFADE").intValue());
@@ -208,9 +208,9 @@
             assertEquals("createNumber(String) 15 failed", new BigDecimal("1.1E-700"), NumberUtils
                     .createNumber("1.1E-700F"));
         }
-        assertEquals("createNumber(String) 16 failed", new Long("10" + Integer.MAX_VALUE), NumberUtils
+        assertEquals("createNumber(String) 16 failed", Long.valueOf("10" + Integer.MAX_VALUE), NumberUtils
                 .createNumber("10" + Integer.MAX_VALUE + "L"));
-        assertEquals("createNumber(String) 17 failed", new Long("10" + Integer.MAX_VALUE), NumberUtils
+        assertEquals("createNumber(String) 17 failed", Long.valueOf("10" + Integer.MAX_VALUE), NumberUtils
                 .createNumber("10" + Integer.MAX_VALUE));
         assertEquals("createNumber(String) 18 failed", new BigInteger("10" + Long.MAX_VALUE), NumberUtils
                 .createNumber("10" + Long.MAX_VALUE));
@@ -288,7 +288,7 @@
 
     @Test
     public void testCreateLong() {
-        assertEquals("createLong(String) failed", new Long("12345"), NumberUtils.createLong("12345"));
+        assertEquals("createLong(String) failed", Long.valueOf("12345"), NumberUtils.createLong("12345"));
         assertEquals("createLong(null) failed", null, NumberUtils.createLong(null));
         this.testCreateLongFailure("");
         this.testCreateLongFailure(" ");
diff --git a/src/test/java/org/apache/commons/lang3/mutable/MutableLongTest.java b/src/test/java/org/apache/commons/lang3/mutable/MutableLongTest.java
index b69a1f1..278f991 100644
--- a/src/test/java/org/apache/commons/lang3/mutable/MutableLongTest.java
+++ b/src/test/java/org/apache/commons/lang3/mutable/MutableLongTest.java
@@ -36,7 +36,7 @@
         
         assertEquals(1, new MutableLong(1).longValue());
         
-        assertEquals(2, new MutableLong(new Long(2)).longValue());
+        assertEquals(2, new MutableLong(Long.valueOf(2)).longValue());
         assertEquals(3, new MutableLong(new MutableLong(3)).longValue());
 
         assertEquals(2, new MutableLong("2").longValue());
@@ -50,19 +50,19 @@
     public void testGetSet() {
         final MutableLong mutNum = new MutableLong(0);
         assertEquals(0, new MutableLong().longValue());
-        assertEquals(new Long(0), new MutableLong().getValue());
+        assertEquals(Long.valueOf(0), new MutableLong().getValue());
         
         mutNum.setValue(1);
         assertEquals(1, mutNum.longValue());
-        assertEquals(new Long(1), mutNum.getValue());
+        assertEquals(Long.valueOf(1), mutNum.getValue());
         
-        mutNum.setValue(new Long(2));
+        mutNum.setValue(Long.valueOf(2));
         assertEquals(2, mutNum.longValue());
-        assertEquals(new Long(2), mutNum.getValue());
+        assertEquals(Long.valueOf(2), mutNum.getValue());
         
         mutNum.setValue(new MutableLong(3));
         assertEquals(3, mutNum.longValue());
-        assertEquals(new Long(3), mutNum.getValue());
+        assertEquals(Long.valueOf(3), mutNum.getValue());
         try {
             mutNum.setValue(null);
             fail();
@@ -82,7 +82,7 @@
         assertEquals(false, mutNumB.equals(mutNumC));
         assertEquals(true, mutNumC.equals(mutNumC));
         assertEquals(false, mutNumA.equals(null));
-        assertEquals(false, mutNumA.equals(new Long(0)));
+        assertEquals(false, mutNumA.equals(Long.valueOf(0)));
         assertEquals(false, mutNumA.equals("0"));
     }
 
@@ -94,7 +94,7 @@
         assertEquals(true, mutNumA.hashCode() == mutNumA.hashCode());
         assertEquals(true, mutNumA.hashCode() == mutNumB.hashCode());
         assertEquals(false, mutNumA.hashCode() == mutNumC.hashCode());
-        assertEquals(true, mutNumA.hashCode() == new Long(0).hashCode());
+        assertEquals(true, mutNumA.hashCode() == Long.valueOf(0).hashCode());
     }
 
     public void testCompareTo() {
@@ -121,8 +121,8 @@
     }
 
     public void testToLong() {
-        assertEquals(new Long(0L), new MutableLong(0L).toLong());
-        assertEquals(new Long(123L), new MutableLong(123L).toLong());
+        assertEquals(Long.valueOf(0L), new MutableLong(0L).toLong());
+        assertEquals(Long.valueOf(123L), new MutableLong(123L).toLong());
     }
 
     public void testIncrement() {
@@ -151,7 +151,7 @@
 
     public void testAddValueObject() {
         MutableLong mutNum = new MutableLong(1);
-        mutNum.add(new Long(1));
+        mutNum.add(Long.valueOf(1));
         
         assertEquals(2, mutNum.intValue());
         assertEquals(2L, mutNum.longValue());
@@ -167,7 +167,7 @@
 
     public void testSubtractValueObject() {
         MutableLong mutNum = new MutableLong(1);
-        mutNum.subtract(new Long(1));
+        mutNum.subtract(Long.valueOf(1));
         
         assertEquals(0, mutNum.intValue());
         assertEquals(0L, mutNum.longValue());