¿Cómo eliminar el último elemento de una matriz?

Ahora estoy trabajando con el retroceso recursivo, mi tarea es encontrar el camino más largo en el laberinto, la masa se presenta como el campo cubierto con las coordenadas, y las coordenadas de las paredes están doloridas en el archivo. He hecho un analizador para analizar el archivo de entrada y construir los muros, pero también he almacenado estas coordenadas en la matriz de un tipo de objeto Coordinate, para verificar si es posible mover la siguiente pieza de la "serpiente" en la siguiente campo, luego he creado este método, ahora he entendido que necesitaré un método para eliminar la última coordenada de la matriz cuando usaré el seguimiento, ¿cómo puedo hacerlo? El objetivo no es usar listas de matriz o listas vinculadas solo matrices! ¡Gracias!

public class Coordinate {
int xCoord;
int yCoord;

 Coordinate(int x,int y) {
     this.xCoord=x;
     this.yCoord=y;
 }

 public int getX() {
     return this.xCoord;
 }

 public int getY() {
     return this.yCoord;
 }
 public String toString() {
     return this.xCoord + "," + this.yCoord;

 }

 }

Y

public class Row {
static final int MAX_NUMBER_OF_COORD=1000;

Coordinate[] coordArray;
int numberOfElements;


Row(){
    coordArray = new Coordinate[MAX_NUMBER_OF_COORD];
    numberOfElements=0;

   }


void add(Coordinate toAdd) {
    coordArray[numberOfElements]=toAdd;
    numberOfElements +=1;
}
boolean ifPossible(Coordinate c1){
    for(int i=0;i<numberOfElements;i++){

        if(coordArray[i].xCoord==c1.xCoord && coordArray[i].yCoord==c1.yCoord){
                return false;
            }
        }


    return true;
}

 }

Respuestas a la pregunta(4)

Su respuesta a la pregunta