Evitar valores repetidos na JComboBox

Ola,
A minha duvida é a seguinte, tenho duas JComboBox onde escolho o valor na primeira e na segunda JComBox vai mostrar as opções conforme o valor informado na primeira.
Ex: na primeira tem os valores 1, 2, 3, 4, 5, 6, se escolher o valor 1 a segunda combobox vai mostrar os valores somente referente a escolha da primeira combobox.

Primeira Combo
1
2
3
Segunda Combo
1= 100, 101, 102
2= 200, 201, 201
3= 300, 301, 302 `
Label mostra conforme a opção escolhida
se for ecolhido 1 = 100 = EMP1 ou se for 1 = 101 = EMP2

Consegui gerar os valores nas ComboBox, mas se escolhe o numero dois da primeira ComboBox,
os numeros da escolha 1 aparecem jundo com a escolha 2 ou repete varias vezes se escolhe o numero 1 da primeira ComboBox, queria que ficasse somente os numeros correspondente a escolha que fiz.
Imagem`

private String emp[] = {"","1", "2", "3", "4", "6"};
private String fil[] = {"100", "101", "200", "201", "202", "300","301", 
                      "302", "400", "401", "402", "600", "601", "602"};

private void comboempItemStateChanged(java.awt.event.ItemEvent evt) {                                          
    // TODO add your handling code here:
    if(evt.getStateChange() == ItemEvent.SELECTED){
        switch(comboemp.getSelectedIndex()){
            case 0:
                combofil.removeAllItems();
                break;
            case 1:
                preencheCombo(combofil, fil,1);
                break;
            case 2:
                preencheCombo(combofil, fil,2);
                break;
            case 3:
                preencheCombo(combofil, fil,2);
                break;
            case 4:
                preencheCombo(combofil, fil,2);
                break;
            case 6:
                preencheCombo(combofil, fil,2);
                break;
                
        }
    }
private void preencheCombo(JComboBox combo, String[] array, int n) {
    int i = 0;
    for( String elemento : array){
       switch(n){
            case 0: // Preenche ComboBox Empresa
                combo.addItem(elemento);
                break;
            case 1: // Preenche ComboBox Filial
                combo.addItem(elemento); 
                break; 
            case 2: // Preenche ComboBox Filial
                combo.addItem(elemento);                
                break;
            case 3: // Preenche ComboBox Filial
                combo.addItem(elemento);                
                break;
            case 4: // Preenche ComboBox Filial
                combo.addItem(elemento);                
                break;
            case 6: // Preenche ComboBox Filial
                combo.addItem(elemento);                
                break;
      }  
       i++;
    }
}

`

Summary

This text will be hidden

O seu método preencheCombo faz exatamente a mesma coisa em cada um dos case.

combo.addItem adiciona os itens, sem remover os itens da escolha anterior, então insira
combo.removeAllItems() no início do método para a remoção.

Eu coloquei entre intervalos controlando com if, ele imprime o que quero, mas não consigo fazer ele remove os valores repetidos, alguém tem um metodo como exemplo para me ajudar.

No caso deles estarem fazendo a mesma coisa nos case, era porque estava tentando implementar um controle de valores, quando um valor for escolhido no primeiro combo deve mostrar somente os valores correspondentes no segundo combo, mas não consegui e deixei assim ate surgir uma ideia.

Consegui desenvolver o método preencheCombo, da seguinte forma vou postar o código para quem quiser dar uma olhada, esta funcionando, ate foi mais fácil do que pensei, dessa forma de fazer, pra quem não tem muito conhecimento em java a ideia do diego12 ajudou bastante.

private void preencheCombo(JComboBox combo, String[] array, int n) {
    int cont = 0;
    int v = combo.getItemCount();

    for(String elemento : array){
       
        switch(n){
            case 0:
                combo.addItem(elemento);
                break;
            case 1:

                if( v <= 3){
                    combo.removeItem(elemento);
                    if(cont < 2 && v <=3){
                        combo.addItem(elemento);
                    }
                }
                break;
            case 2:
              
                if( v <= 3){
                    combo.removeItem(elemento);
                    if(cont >= 2 && cont <=4){
                        combo.addItem(elemento);
                    }
                }
                break;
            case 3:
                
                if( v <= 3){
                    combo.removeItem(elemento);
                    if(cont >= 5 && cont <=7){
                        combo.addItem(elemento);
                    }
                }
                break;
            case 4:
                
                if( v <= 3){
                    combo.removeItem(elemento);
                    if(cont >= 8 && cont <= 10){
                        combo.addItem(elemento);
                    }
                }
                break;
            case 6:
               
                if( v <= 3){
                    combo.removeItem(elemento);
                    if(cont >= 11 ){
                        combo.addItem(elemento);
                    }
                }
                break;
        }
         cont++;
       
    }
}