Vetor + Delete

Olá, todos do forum! Gostaria de saber o que ta de errado no meu algoritmo de delete de um numero dentro do vetor. O meu algoritmo é esse aqui:

sKey = JOptionPane.showInputDialog("Qual o numero da pesquisa: ");
	 key = Integer.parseInt(sKey);
	 
	 int tam = a.length;
	 for(int j=0; j<a.length; j++){
	 	if(a[j]==key)
	 	  break;
	 	  for(int k = j; k<a.length; k++){
	 	  	a[k] = a[k+1];
	 	  	tam--;
	 	  }	
	 } 

Ele ta dando uma Exception de ArrayIndexOutOfBoundsException. Alguem pode ajudar?
grato.

Ola…
Problema esta nesta parte:

 for(int k = j; k<a.length; k++){  
             a[k] = a[k+1];  
             tam--;  
           }

Quando vc popula teu Vetor a[k] = a[k+1] ele vai chegar em uma posição do vetor que não existe por isso que esta dando o erro ArrayIndexOutOfBoundsException. To sem tempo aqui pra colocar um exemplo pra vc, mas assim que der eu coloco! ou um dos amigos do forum aqui vai te ajudar!! flw!