Problema com for [Resolvido]

Bom galera, seria um problema relativamente simples, mas que ta me dando algum trabalho, vamos lá.
eu tenho um “for” com esta sentença “Usuario u : usuarios”, ela me lista dados para um combobox, e nessa lista, eu mando o resultado para um outro
JFrame, sendo que, eu precisaria mandar no caso “u.getId()” que seria o selecionado na lista para uma consulta, nisso eu fiz um array para armazenar o valor de “u.getId()” sem aparecer para o usuario, e dps analizar a posiçao e mandar o “u.getId()” selecionado para outro jFrame, e pegar na lista a ordem do selecionado, e no array este selecionado pela ordem, mas ai que tá, eu precisaria nessa sentença “Usuario u : usuarios” correr uma variavel incrementando valor como se fosse um indice para o meu array, so que ela é uma sentença meio que especial, e quando tentei por um incremento junto “for (Usuario u : usuarios;i++)” deu um erro nesta sentença, ainda estou em estudos e tenho pouca experiencia nesta plataforma, estou precisando de ajuda, quem puder serei grato.

Ah, abaixo parte do código.

        ArrayList us = new ArrayList();

        UsuarioDLO udlo = new UsuarioDLO();
        int i = 0;
        try {
            List<Usuario> usuarios = new ArrayList<Usuario>();



            usuarios = udlo.listar();
            for (Usuario u : usuarios) {
                //Usuario u:usuarios instancio "u" e vai ate o fim de "usuarios"
               
                us.add(u.getId());
                jComboBox1.addItem(u.getNome() + ", " + u.getIdade() + " anos");

            }

        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "Erro !");
        }
  1. Sobrescreva o método toString da classe usuario:

@Override public String toString() { return getNome() + ", " + getIdade() + " anos."; }

  1. Adicione Usuarios no seu ComboBox, e não Strings:

try { List<Usuario> usuarios = usuarios = udlo.listar(); for (Usuario u : usuarios) { //Usuario u:usuarios instancio "u" e vai ate o fim de "usuarios" jComboBox1.addItem(u); } } catch (Exception e) { JOptionPane.showMessageDialog(null, "Erro !"); }

Agora, você não precisa de um segundo array. O getSelectedItem() do seu Combo vai retornar um usuário inteiro:

Usuario usuario = (Usuario) jComboBox1.getSelectedItem(); JOptionPane.showMessageDialog(usuario.getId());

Amigo, obrigado pela ajuda, mas so teve um problema, essa parte aqui,

@Override   
public void toString() {   
   return getNome() + ", " + getIdade() + " anos.";   
}  

você disse para sobrescrever o método toString da classe usuario,
eu não sei onde seria pra entrar no codigo, pelo que parece seria na classe “usuario” como disse,
mas ja que disse sobrescrever, la na possui esse metodo, fiquei meio perdido, poderia explicar melhor aonde deve entrar esse codigo,
ainda to na fase de estudo, e estudo mais por mim mesmo, ja que na faculdade foi meio fraco essa parte de java

É só colocar esse método na classe Usuario.

Ah sim, amigo, muito obrigado pela ajuda, so uma observação, quando o metodo estava assim

@Override   
public void toString() {   
   return getNome() + ", " + getIdade() + " anos.";   
}  

ocorria erro, mas foi so muder de void para String, que deu tudo certo.

Grato