Во-первых, метод asList является правильным методом:
Integer[] myArray = new Integer[3];
List<Integer> myArrayList = Arrays.asList(myArray);
System.out.println(myArrayList.size()); // prints 3, as expected
Проблема может заключаться в том, что вы вызываете метод varargs asList таким образом, что java интерпретирует ваш параметр как первое значение varargs (а не как массив значений).
Object myArray = new Integer[3];
List<Object> myArrayList = Arrays.asList(myArray);
System.out.println(myArrayList.size()); // prints 1 - java invoked it as an array of Integer[]
Чтобы решить эту проблему, попробуйте привести ваш параметр как Object[]
, чтобы вызвать varargs, например:
Object myArray = new Integer[3];
List<Object> myArrayList = Arrays.asList((Object[]) myArray); // Note cast here
System.out.println(myArrayList.size()); // prints 3, as desired