大名鼎鼎的java动态脚本语言。已经通过了sun的认证

源代码在线查看: arraycoercetest.groovy

软件大小: 1630 K
上传用户: hjf
关键词: java sun 动态 脚本
下载地址: 免注册下载 普通下载 VIP

相关代码

				class ArrayCoerceTest extends GroovyTestCase {								    Object[] field				    Long[] numberField				    int[] primitiveField								    void testStaticallyTypedPrimitiveTypeArrays() {				        int[] a = [1, 2, 3]				        assert a instanceof int[]				        assert a.length == 3				        dump(a)				    }								    void testStaticallyTypedPrimitiveFieldArrays() {				        primitiveField = [1, 2, 3]				        dump(primitiveField)								        assert primitiveField instanceof int[]				        assert primitiveField.length == 3				    }												    void testFoo2() {				        def x = [1, 2, 3] as Object[]				        dump(x)				        assert x instanceof Object[]				        def c = x.getClass()				        def et = c.componentType				        assert et == Object.class				    }								    void testStaticallyTypedObjectArrays() {				        Object[] b = [1, 2, 3]				        dump(b)								        assert b instanceof Object[]				        assert b.length == 3				        def c = b.getClass()				        def et = c.componentType				        assert et == Object.class								    }								    void testStaticallyTypedArrays() {				        Integer[] b = [1, 2, 3]				        dump(b)								        assert b instanceof Integer[]				        assert b.length == 3				        def c = b.getClass()				        def et = c.componentType				        assert et == Integer.class								    }								    void testStaticallyTypedObjectFieldArrays() {				        field = [1, 2, 3]				        dump(field)								        assert field instanceof Object[]				        assert field.length == 3				    }								    void testStaticallyTypedFieldArrays() {				        numberField = [1, 2, 3]				        dump(numberField)								        assert numberField instanceof Long[]				        assert numberField.length == 3				    }								    void testMakePrimitiveArrayTypes() {				        def x = null								        x = [1, 0, 1] as boolean[]				        assert x instanceof boolean[]				        assert x.length == 3				        dump(x)								        x = [1, 2, 3] as byte[]				        assert x.length == 3				        assert x instanceof byte[]				        dump(x)								        x = [1, 2, 3] as char[]				        assert x.length == 3				        assert x instanceof char[]				        dump(x)								        x = [1, 2, 3] as short[]				        assert x.length == 3				        assert x instanceof short[]				        dump(x)								        x = [1, 2, 3] as int[]				        assert x.length == 3				        assert x instanceof int[]				        dump(x)								        x = [1, 2, 3] as long[]				        assert x.length == 3				        assert x instanceof long[]				        dump(x)								        x = [1, 2, 3] as float[]				        assert x.length == 3				        assert x instanceof float[]				        dump(x)								        x = [1, 2, 3] as double[]				        assert x.length == 3				        assert x instanceof double[]				        dump(x)				    }																    void testAsObjectArray() {				        def x = [1, 2, 3] as Object[]				        def c = x.getClass()				        def et = c.componentType				        assert et == Object.class				        dump(x)								        Integer[] y = [1, 2, 3]				        c = y.getClass()				        et = c.componentType				        assert et == Integer.class				        dump(y)				    }								    void testMakeArrayThenCoerceToAnotherType() {				        def x = [1, 2, 3] as int[]				        assert x.size() == 3				        assert x instanceof int[]				        dump(x)								        // lets try coerce it into an array of longs				        def y = x as long[]				        assert y instanceof long[]				        dump(y)								        def z = y as Object[]				        assert z instanceof Object[]				        def c = z.getClass()				        def et = c.componentType				        assert et == Object.class				        dump(z)								        x = y as int[]				        assert x.size() == 3				        assert x instanceof int[]				        dump(x)				    }												    void testMakeArrayTypes() {				        def x = null								        x = [1, 0, 1] as Boolean[]				        assert x instanceof Boolean[]				        assert x.length == 3				        dump(x)								        x = [1, 2, 3] as Byte[]				        assert x.length == 3				        assert x instanceof Byte[]				        dump(x)								        x = [1, 2, 3] as Character[]				        assert x.length == 3				        assert x instanceof Character[]				        dump(x)								        x = [1, 2, 3] as Short[]				        assert x.length == 3				        assert x instanceof Short[]				        dump(x)								        x = [1, 2, 3] as Integer[]				        assert x.length == 3				        assert x instanceof Integer[]				        dump(x)								        x = [1, 2, 3] as Long[]				        assert x.length == 3				        assert x instanceof Long[]				        dump(x)								        x = [1, 2, 3] as Float[]				        assert x.length == 3				        assert x instanceof Float[]				        dump(x)								        x = [1, 2, 3] as Double[]				        assert x.length == 3				        assert x instanceof Double[]				        dump(x)				    }								    void dump(array) {				        println "Array is of type ${array.class} which has element type ${array.class.componentType}"				        for (i in array) {				            println "Contains entry $i of type ${i.class}"				        }				        println()				    }								}							

相关资源