1 package serp.util;
2
3
4
5
6
7
8 public class Numbers {
9 private static final Integer INT_NEGONE = new Integer(-1);
10 private static final Long LONG_NEGONE = new Long(-1);
11 private static final Integer[] INTEGERS = new Integer[50];
12 private static final Long[] LONGS = new Long[50];
13
14 static {
15 for (int i = 0; i < INTEGERS.length; i++)
16 INTEGERS[i] = new Integer(i);
17 for (int i = 0; i < LONGS.length; i++)
18 LONGS[i] = new Long(i);
19 }
20
21
22
23
24
25 public static Integer valueOf(int n) {
26 if (n == -1)
27 return INT_NEGONE;
28 if (n >= 0 && n < INTEGERS.length)
29 return INTEGERS[n];
30 return new Integer(n);
31 }
32
33
34
35
36
37 public static Long valueOf(long n) {
38 if (n == -1)
39 return LONG_NEGONE;
40 if (n >= 0 && n < LONGS.length)
41 return LONGS[(int) n];
42 return new Long(n);
43 }
44 }