if you use the {...} array form in anything but an initializer.
WRONG
private int[] foo() { int[] x = new Array[3]; x = {1,2,3}; return x; }
RIGHT
private int[] foo() { int[] x = {1,2,3}; return x; }
ps:When using the initializers, an array must be declared, constructed and explicitly initialized at the same time.