Método para crear Arrays automáticamente

¡Bien, tras muchas horas rompiéndome el coco lo he conseguido! Tengo un método para crear un ARRAY con datos de tipo INT (pueden ser float, double etc.) de forma "automática". 

El método tiene un funcionamiento muy sencillo. Al llamarlo te pregunta por la cantidad de espacios que necesitarás para tu array y posteriormente ye pide que vayas agregando valores al Array en función de la cantidad de espacios que le hayas solicitado.

Para llamar a este método cabe recordar que han de colocar el valor que devuelve en una variable de tipo array.

Por ejemplo: int [ ] VariableArray=CrearArrayConMetodo( );

A continuación os dejo con el código.

public static int [] CrearArrayConMetodo (){
Scanner input = new Scanner(System.in);
System.out.println("Define la cantidad de espacios que necesitará tu array: ");
int a=input.nextInt();
int [] x = new int [a];
int b;
for (int counter=0;counter<x.length;counter++) {
System.out.println("Introduce un valor para tu array: ");
b=input.nextInt();
x[counter]+=b;
}
return x;

El método no hace más que pasar por un bucle FOR en donde por cada vuelta del bucle le asigna al array "provisional" el valor que tu le estás asignando a ese espacio, utilizando como ínidice un contador denominado counter y un array "provisional" llamado X.