Q:

Como posso fazer meu código com menos linhas?

Atualmente estou com um grande número de linhas no meu código:
Segue abaixo a parte de inserção de jogadores, esses jogadores terão os nomes buscados a partir do banco e enviados pelo cmb box.
private void Verificar() {
    String jogadores = JOptionPane.showInputDialog(null, "Selecione a quantidade de jogadores.");
    setLayout(new FlowLayout());  //configura o layout de frame

    if (null != jogadores) {

        if ("1".equals(jogadores)
            || "2".equals(jogadores) || "3".equals(jogadores) 
            || "4".equals(jogadores) || "5".equals(jogadores) 
            || "6".equals(jogadores) || "7".equals(jogadores) 
            || "8".equals(jogadores) || "9".equals(jogadores) 
            || "10".equals(jogadores) || "11".equals(jogadores) 
            || "12".equals(jogadores) || "13".equals(jogadores) 
            || "14".equals(jogadores) || "15".equals(jogadores) 
            || "16".equals(jogadores) || "17".equals(jogadores) 
            || "18".equals(jogadores) || "19".equals(jogadores) 
            || "20".equals(jogadores) || "21".equals(jogadores) 
            || "22".equals(jogadores) || "23".equals(jogadores) 
            || "24".equals(jogadores) || "25".equals(jogadores) 
            || "26".equals(jogadores) || "27".equals(jogadores) 
            || "28".equals(jogadores) || "29".equals(jogadores) 
            || "30".equals(jogadores) || "31".equals(jogadores) 
            || "32".equals(jogadores) || "33".equals(jogadores) 
            || "34".equals(jogadores) || "35".equals(jogadores) 
            || "36".equals(jogadores) || "37".equals(jogadores) 
            || "38".equals(jogadores) || "39".equals(jogadores) 
            || "40".equals(jogadores)) {

            switch (jogadores) {
                case "1":
                    setSize(460, 65);
                    setTitle("Selecione os jogadores");
                    J1();
                    break;
            } // fim switch

        } // fim if gigante
    } // fim if not null

} // fim método verificar

private void J1() {
    JLabel jog1 = new JLabel("Nome do jogador: ");
    add(jog1);
    jog1.setVerticalTextPosition(SwingConstants.BOTTOM);
    JComboBox cbj1 = new JComboBox();
    add(cbj1);
    cbj1.setModel(new javax.swing.DefaultComboBoxModel(new String[] {"    "}));
    JLabel jog2 = new JLabel("Número da cartela: ");
    add(jog2);
    jog2.setVerticalTextPosition(SwingConstants.BOTTOM);
    JComboBox cbj2 = new JComboBox();
    add(cbj2);
    cbj2.setModel(new javax.swing.DefaultComboBoxModel(new String[] {"    "}));

} // fim J1

Em negrito no inicio do codigo coloquei os 40 "case" que estou usando, para cada CASE existe um Jx sendo x o numero de jogadores que o usuario informar.
No private void J1() usei como exemplo pois o codigo ficaria ENORME
Está dificultando minha manutenção no código.
Gostaria de saber se existe uma forma para que concatenando o prefixo J com o numero de jogadores que o usuario informar eu jogar isso na tela para que o usuario preencha no combo box o nome dos jogadores da partida, lembrando que existem varios case atualmente, pensei na criação de apenas uma função que fizesse esse controle, sem bagunçar minha interface.

A:

essa parte aqui :
 String jogadores = JOptionPane.showInputDialog(null, "Selecione a quantidade de jogadores.");
setLayout(new FlowLayout());  //configura o layout de frame

if (null != jogadores) {

    if ("1".equals(jogadores)
        || "2".equals(jogadores) || "3".equals(jogadores) 
        || "4".equals(jogadores) || "5".equals(jogadores) 
        || "6".equals(jogadores) || "7".equals(jogadores) 
        || "8".equals(jogadores) || "9".equals(jogadores) 
        || "10".equals(jogadores) || "11".equals(jogadores) 
        || "12".equals(jogadores) || "13".equals(jogadores) 
        || "14".equals(jogadores) || "15".equals(jogadores) 
        || "16".equals(jogadores) || "17".equals(jogadores) 
        || "18".equals(jogadores) || "19".equals(jogadores) 
        || "20".equals(jogadores) || "21".equals(jogadores) 
        || "22".equals(jogadores) || "23".equals(jogadores) 
        || "24".equals(jogadores) || "25".equals(jogadores) 
        || "26".equals(jogadores) || "27".equals(jogadores) 
        || "28".equals(jogadores) || "29".equals(jogadores) 
        || "30".equals(jogadores) || "31".equals(jogadores) 
        || "32".equals(jogadores) || "33".equals(jogadores) 
        || "34".equals(jogadores) || "35".equals(jogadores) 
        || "36".equals(jogadores) || "37".equals(jogadores) 
        || "38".equals(jogadores) || "39".equals(jogadores) 
        || "40".equals(jogadores)) ...

voce pode trocar por isso aqui :
String strJogadores = JOptionPane.showInputDialog(null, "Selecione a quantidade de jogador

int intJogadores = 0;
// confere se foi digitado um numero valido 
try{ intJogadores = Integer.parseInt(strJogadores);}
catch(NumberFormatException e){// sua msg de erro aqui caso entro um invalido numero}

if(intJogadores > 0 && intJogadores < 41)
{
    switch(intJogadores)
    {
        case 1:
          ......
          ........
        break;
    }
}

acho que da pra eliminar esse switch ai , pelo que eu entendi acho q vc pode usar um loop pra fazer o trabalho ao invez de usar 41 cases dentro do switch ,ai no caso vc usaria o intJogadores  como length do loop  , para te ajudar mais sobre isso teria que ter mais informacao sobre seu codigo. 

