Ajuda com o método Excluir() de uma Fila!

[color=darkred]Pessoal, estou com problemas em um trabalho aqui.
Preciso cria um método que exclua um determinado item da fila.
O código que eu tenho é o seguinte.[/color]

[code]import javax.swing.JOptionPane;

class Filas {
private int tamanho;
private String[] fila;
private int qtde;

public Filas(int x){
	tamanho = x;
	fila = new String[tamanho];
	qtde = -1;    	
}

public void push(){
	if(qtde == tamanho-1){
 		JOptionPane.showMessageDialog(null,"Fila cheia...");
 		return;
	}
	qtde++;
	fila[qtde] = JOptionPane.showInputDialog("Entre com o nome: ");
	printall();
}
    
     
public void printall(){
    if(qtde == -1)    
 		JOptionPane.showMessageDialog(null,"Fila vazia...");
    else{
        String str = "Fila atual:\n";
        String [] fila_aux = new String[tamanho]; //nao pode ser qtde+1 por causa de fila=fila_aux

        //Transfere para fila auxiliar
        for(int i=0;i<=qtde;i++){
 		   str += fila[i] + "\n";
 		   fila_aux[i]=fila[i];
 		   fila[i]=null;  //apaga conteúdo
        }
        
        fila = fila_aux;
 		   
 		JOptionPane.showMessageDialog(null,str);   
}

}
}

class J_Exerc1 {

public static void main(String args[])  {

	Filas aFila = new Filas(4);
	int menu = 0;
            menu  = Integer.parseInt(JOptionPane.showInputDialog("Escolha a opção desejada...\n" + "1- Inserir" + "\n2- Excluir" + "\n3- Imprimir"));
            
            switch (menu) {
                case 1: aFila.push();
                case 2: aFila.printall();
                   
  }            

}
}[/code]

[color=darkred]Li alguns tópicos, mas sou iniciante em java, e não consegui achar um lógica plausível para me ajudar.
Se puderem eu ficaria agradecido.
Obrigado![/color]

olá FreyBonan,

Cara existe uma API para fila, o nome é Queue, não sei se você precisa implementa na mão, mas essa fica mais fácil.

Veja se esse exemplo pode esclarecer

	public static void main(String[] args) {
		
		int qt = 3; // qt de elementos na fila
		String[] fila = {"a","b","c", null};
		
		//push
		fila[qt] = "d";
		qt++;
		
		//pop
		String pop = fila[qt-1];
		fila[qt-1] = null;
		qt--;
		
		System.out.println(pop);
	}

Não é uma implementação completa, e ainda falta as validações( push com a pilha cheia e pop com ela vazia etc.)