/*
* Copyright ( c ) 2003 , 2004 , Oracle and / or its affiliates . All rights reserved .
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER .
*
* This code is free software ; you can redistribute it and / or modify it
* under the terms of the GNU General Public License version 2 only , as
* published by the Free Software Foundation .
*
* This code is distributed in the hope that it will be useful , but WITHOUT
* ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE . See the GNU General Public License
* version 2 for more details ( a copy is included in the LICENSE file that
* accompanied this code ) .
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work ; if not , write to the Free Software Foundation ,
* Inc . , 51 Franklin St , Fifth Floor , Boston , MA 02110 - 1301 USA .
*
* Please contact Oracle , 500 Oracle Parkway , Redwood Shores , CA 94065 USA
* or visit www . oracle . com if you need additional information or have any
* questions .
*/
/*
* @ test
* @ bug 4869233 4872709 4868735 4921949 4921209 4965701 4934916 4975565 4974939
* @ summary Boxing / unboxing positive unit and regression tests
* @ author gafter
*/
public class Boxing1 {
static Boolean _Boolean = true ;
static boolean _boolean = _Boolean ;
static Byte _Byte = (byte )3 ;
static byte _byte = _Byte ;
static Character _Character = 'a' ;
static char _char = _Character;
static Short _Short = (short )4 ;
static short _short = _Short ;
static Integer _Integer = 5 ;
static int _int = _Integer;
static Long _Long = 12 L;
static long _long = _Long ;
static Float _Float = 1 .2 f;
static float _float = _Float ;
static Double _Double = 1 .34 ;
static double _double = _Double ;
public static void main(String[] args) {
_Double = _Integer + _Integer + 0 .0 d;
if (_Double != 10 ) throw new Error();
_Integer = 2 ;
_float = _Integer;
if (_float != 2 .0 f) throw new Error();
_int = 12 ;
_Float = _int + 0 .0 f;
if (_Float != 12 .0 f) throw new Error();
_Integer = 8 ;
_float = (float )_Integer;
if (_float != 8 .0 f) throw new Error();
_int = 9 ;
_Float = (Float )(_int + 0 .0 f);
if (_Float != 9 .0 f) throw new Error();
if (_Boolean ) ; else throw new Error();
if (!_Boolean ) throw new Error();
if (_Integer >= _Long ) throw new Error();
_Character = 'a' ;
String s1 = ("_" + _Character + "_" ).intern();
if (s1 != "_a_" ) throw new Error(s1);
/* assignment operators don't work; see 4921209 */
if (_Integer++ != 8 ) throw new Error();
if (_Integer++ != 9 ) throw new Error();
if (++_Integer != 11 ) throw new Error();
if ((_Integer += 3 ) != 14 ) throw new Error();
if ((_Integer -= 3 ) != 11 ) throw new Error();
Integer i = 0 ;
i = i + 2 ;
i += 2 ;
if (i != 4 ) throw new Error();
int j = 0 ;
j += i;
if (j != 4 ) throw new Error();
Integer a[] = new Integer[1 ];
a[0 ] = 3 ;
a[0 ] += 3 ;
if (a[0 ] != 6 ) throw new Error();
Froobie x = new Froobie();
Froobie y = new Froobie();
x.next = y;
x.next.i = 4 ;
x.next.i += 4 ;
if (--x.next.i != 7 ) throw new Error();
if (x.next.i-- != 7 ) throw new Error();
if (x.next.i != 6 ) throw new Error();
boxIndex();
boxArray();
}
static void boxIndex() {
String[] a = { "hello" , "world" };
Integer i = 0 ;
System.out.println(a[i]);
}
static void boxArray() {
Integer[] a2 = { 0 , 1 , 2 , 3 };
for (int i : a2)
System.out.println(i);
}
static class Froobie {
Froobie next = null ;
Integer i = 1 ;
}
static class Scott {
Integer i[];
Integer j[];
Integer k;
int q = i[j[k]]++;
}
class T4974939 {
void f() {
Byte b = 12 ;
Byte c = 'a' ;
Short s = 'b' ;
Short t = 12 ;
Character d = 12 ;
}
}
}
Messung V0.5 in Prozent C=89 H=90 G=89
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-06-10)
¤
*© Formatika GbR, Deutschland