Cómo eliminar un elemento específico y reducir el tamaño de una matriz en Java

Quiero eliminar un elemento de una matriz + reducir el tamaño de una matriz.

import java.util.Scanner;

Demonio de clase pública {

public static void main (String [] args) lanza Exception {
Entero a [] = {1, 2, 3, 4, 5};
System.out.println (“ingrese el elemento para buscar”);
Scanner scan = nuevo escáner (System.in);
int elemento = scan.nextInt ();
int index = findIndexOfElement (a, elemento);

if (índice> = 0) {

Entero b [] = nuevo entero [a.length – 1];
System.arraycopy (a, 0, b, 0, elemento – 1);
System.arraycopy (a, elemento, b, elemento – 1, a.length – elemento);

a = nuevo entero [longitud b];
System.arraycopy (b, 0, a, 0, a.length);
para (int c: a)
System.out.println (c);
} más {
System.out.println (“elemento no encontrado … ..”);
}
}

private static int findIndexOfElement (Integer [] a, int element) {
para (int j = 0; j <a.length; j ++)
for (int i = 0; i <a.length; i ++) {
if (un elemento [i] ==) {
volver i;
}
}
volver -1;
}
}

Salida…

ingrese el elemento para buscar
5 5
1
2
3
4 4