Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Como ficaria o "for" normal no caso de um Set

Estou com uma Dúvida, como o "Set" não tem o método ".get()", como eu faria para fazer o for convencional? Sei fazer pelo foreach, mas queria enterder o processo.

package br.com.alura;

import java.util.HashSet;
import java.util.Set;

public class TestaAlunos {
    public static void main(String[] args) {

        Set<String> alunos = new HashSet<>();

        alunos.add("Paulo");
        alunos.add("Alberto");
        alunos.add("Pedro");    
        alunos.add("Nico");

        for (int i = 0 ; i < alunos.size() ; i++) {
            String refDoFor = alunos.??????

        }

        //Foreach
        for (String refDoFor : alunos) {
            System.out.println(refDoFor);
        }

    }
}

Agradeço caso alguem posso me tirar essa dúvida.

2 respostas

Eu fiz isso, mas não sei se seria o mais adequado.

        for (int i = 0 ; i < alunos.size() ; i++) {
            List<String> setParaLista = new ArrayList<String>(alunos);
            System.out.println(setParaLista.get(i));
        }

Eu transformei o "set" em "lista" e usei o "get"

solução!

Desculpa galera, O Paulo Silveira explica mais pra frente do curso essa questão.

Mas fica aí para quem quiser achar outra forma.