1.1 --- a/vm/src/test/java/org/apidesign/vm4brwsr/Array.java Tue Oct 30 20:11:41 2012 +0100
1.2 +++ b/vm/src/test/java/org/apidesign/vm4brwsr/Array.java Tue Oct 30 22:22:18 2012 +0100
1.3 @@ -53,8 +53,12 @@
1.4
1.5 private static final Array[] ARR = { new Array(), new Array(), new Array() };
1.6
1.7 - private static Array[] arr() {
1.8 - return ARR;
1.9 + private static Array[][] arr() {
1.10 + Array[][] matrix = new Array[3][3];
1.11 + for (int i = 0; i < ARR.length; i++) {
1.12 + matrix[i][i] = ARR[i];
1.13 + }
1.14 + return matrix;
1.15 }
1.16 private static <T> T[] filter(T[] in) {
1.17 return in;
1.18 @@ -62,12 +66,19 @@
1.19
1.20 public static double sum() {
1.21 double sum = 0.0;
1.22 - for (int i = 0; i < arr().length; i++) {
1.23 - sum += arr()[i].bytes();
1.24 - sum += arr()[i].shorts();
1.25 - sum += arr()[i].ints()[2];
1.26 - sum += arr()[i].floats();
1.27 - sum += filter(arr())[i].doubles();
1.28 + for (Array[] row : arr()) {
1.29 + int indx = -1;
1.30 + for (Array a : row) {
1.31 + indx++;
1.32 + if (a == null) {
1.33 + continue;
1.34 + }
1.35 + sum += a.bytes();
1.36 + sum += a.shorts();
1.37 + sum += a.ints()[2];
1.38 + sum += a.floats();
1.39 + sum += filter(row)[indx].doubles();
1.40 + }
1.41 }
1.42 return sum;
1.43 }
1.44 @@ -75,8 +86,8 @@
1.45 int[] arr = { 0, 1, 2, 3, 4, 5 };
1.46
1.47 int sum = 0;
1.48 - for (int i = 0; i < arr.length; i++) {
1.49 - sum += arr[i];
1.50 + for (int a : arr) {
1.51 + sum += a;
1.52 }
1.53 return sum;
1.54 }
1.55 @@ -89,7 +100,7 @@
1.56
1.57 public static char copyArray() {
1.58 char[] arr = { '0' };
1.59 - arraycopy(arr()[0].chars, 0, arr, 0, 1);
1.60 + arraycopy(arr()[0][0].chars, 0, arr, 0, 1);
1.61 return arr[0];
1.62 }
1.63 }