Как в Java определить, является ли переменная массивом

Если тип массива известен, то можно воспользоваться оператором instanceof:

Integer[] i = new Integer[3];

if (i instanceof Integer[]) {

System.out.println("i is an array");

}

Также стоит обратить внимание на то, что хотя оператор instanceof и не работает с примитивными типами, он прекрасно работает с массивами примитивных типов, так как массивы тоже являются ссылочными типами:

int[] i = {1,2,3};

if (i instanceof int[]) {

System.out.println("i is an array");

}

Если тип массива неизвестен, то можно использовать методы рефлексии:

int[] i = {1,2,3};

if (i.getClass().isArray()) {

System.out.println("i is an array");

}