1 Clazz.load (["java.lang.Comparable", "$.Number"], "java.lang.Integer", null, function () {
\r
2 java.lang.Integer = Integer = function () {
\r
3 Clazz.instantialize (this, arguments);
\r
5 Clazz.decorateAsType (Integer, "Integer", Number, Comparable, null, true);
\r
6 Integer.prototype.valueOf = function () { return 0; };
\r
7 Integer.toString = Integer.prototype.toString = function () {
\r
8 if (arguments.length != 0) {
\r
9 return "" + arguments[0];
\r
10 } else if (this === Integer) {
\r
11 return "class java.lang.Integer"; // Integer.class.toString
\r
13 return "" + this.valueOf ();
\r
15 Clazz.makeConstructor (Integer,
\r
17 this.valueOf = function () {
\r
21 Clazz.makeConstructor (Integer,
\r
23 var v = Math.round (value) & 0xffffffff;
\r
24 this.valueOf = function () {
\r
28 Clazz.makeConstructor (Integer,
\r
30 var value = Integer.parseInt (s, 10);
\r
31 this.valueOf = function () {
\r
35 Integer.serialVersionUID = Integer.prototype.serialVersionUID = 1360826667806852920;
\r
36 Integer.MIN_VALUE = Integer.prototype.MIN_VALUE = -0x80000000;
\r
37 Integer.MAX_VALUE = Integer.prototype.MAX_VALUE = 0x7fffffff;
\r
38 Integer.TYPE = Integer.prototype.TYPE = Integer;
\r
40 Clazz.defineMethod (Integer, "parseInt",
\r
41 function (s, radix) {
\r
43 throw new NumberFormatException ("null");
\r
45 throw new NumberFormatException ("radix " + radix + " less than Character.MIN_RADIX");
\r
47 throw new NumberFormatException ("radix " + radix + " greater than Character.MAX_RADIX");
\r
49 var integer = parseInt (s, radix);
\r
51 throw new NumberFormatException ("Not a Number : " + s);
\r
54 }, "String, Number");
\r
55 Integer.parseInt = Integer.prototype.parseInt;
\r
56 Clazz.defineMethod (Integer, "parseInt",
\r
58 return Integer.parseInt (s, 10);
\r
61 Integer.parseInt = Integer.prototype.parseInt;
\r
66 Clazz.defineMethod (Integer, "$valueOf",
\r
68 return new Integer(Integer.parseInt (s, 10));
\r
73 Clazz.defineMethod (Integer, "$valueOf",
\r
75 return new Integer(s);
\r
78 Clazz.defineMethod (Integer, "$valueOf",
\r
80 return new Integer(Integer.parseInt (s, r));
\r
81 }, "String, Number");
\r
83 Integer.$valueOf = Integer.prototype.$valueOf;
\r
84 Clazz.overrideMethod(Integer, "equals",
\r
86 if(s == null || ! Clazz.instanceOf(s, Integer) ){
\r
89 return s.valueOf() == this.valueOf();
\r
92 Integer.toHexString = Integer.prototype.toHexString = function (i) {
\r
93 return i.toString (16);
\r
95 Integer.toOctalString = Integer.prototype.toOctalString = function (i) {
\r
96 return i.toString (8);
\r
98 Integer.toBinaryString = Integer.prototype.toBinaryString = function (i) {
\r
99 return i.toString (2);
\r
101 Integer.decode = Clazz.defineMethod (Integer, "decode",
\r
105 var negative = false;
\r
107 if (nm.startsWith ("-")) {
\r
110 }if (nm.startsWith ("0x", index) || nm.startsWith ("0X", index)) {
\r
113 } else if (nm.startsWith ("#", index)) {
\r
116 } else if (nm.startsWith ("0", index) && nm.length > 1 + index) {
\r
119 }if (nm.startsWith ("-", index)) throw new NumberFormatException ("Negative sign in wrong position");
\r
121 result = Integer.$valueOf (nm.substring (index), radix);
\r
122 result = negative ? new Integer (-result.intValue ()) : result;
\r
124 if (Clazz.instanceOf (e, NumberFormatException)) {
\r
125 var constant = negative ? String.instantialize ("-" + nm.substring (index)) : nm.substring (index);
\r
126 result = Integer.$valueOf (constant, radix);
\r
134 Clazz.overrideMethod(Integer, "hashCode",
\r
136 return this.valueOf ();
\r