Ir ao conteúdo
  • Cadastre-se

C# Como sortear um valor random dentro de uma arraylist


rafael holanda

Posts recomendados

Olá, tenho uma array list que guarda as instâncias de 4 objetos e eu quero fazer o sorteio de uma dessas instâncias, sei que tenho que usar o 

Random.Next(variavel.xyz)

mas não sei qual método eu tenho que chamar para pegar o valor do array naquela posição sorteada. 

Se alguém puder me dar uma ajuda agradeço.

Link para o comentário
Compartilhar em outros sites

Random vai devolver um integer que você usa diretamente para acessar o elemento da lista com o operador comum [ ]. Não sei se entendi bem.

 

Evite usar ArrayList<> Use List<> ou SortedSet<> como recomendado em https://docs.microsoft.com/pt-br/dotnet/api/system.collections.arraylist?view=net-5.0

Link para o comentário
Compartilhar em outros sites

Desculpe a demora, mas só agora conseguir pegar no projeto de novo, então não posso fazer um random pegar o conteúdo de uma array list?

Acho qeu não expliquei bem, tenho uma array list que guarda as instancias dos meus jogadores

ArrayList players = new ArrayList(); //lista dos jogadores
            players.Add(player1);
            players.Add(player2);
            players.Add(player3);
            players.Add(player4);
ArrayList playersOrdem = new ArrayList(); //lista com os jogadores embaralhados

e estou usando(quero usar) o codigo

Random ordem = new Random();
                int sorteado;
                int[] verifica = new int[4];

                for (int i = 0; i < players.Count; i++){
                inicio: sorteado = ordem.Next(1, 5);
                    for (int x = 0; x < players.Count; x++){
                        if (verifica[x] == sorteado){
                            goto inicio;
                        }
                    }

                    verifica[i] = sorteado;
                }

para sortear esses jogadores em ordens aleatorias, do jeito que está ele está sorteando as posições mas eu queria pegar os valores do array players no sorteio e coloca-los ordenados no array playersOrdem.

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!