eu tenho um jogo de poker que funciona muito bem, vc pode conferir é só pedir no meu email, que segue na assinatura, mas é raghy@ig.com.br subject TCC-GUJ.
Meu algoritmo foi diferente dos convencionais ou orientado a objetos. Eu fiz que cada carta tem um número. SE são 52 cartas, existem 52 números. e vc lida com eles.
Vc não pode repetir números, etc.
No meu caso funcionou de fato, pois minha idéia era um jogo de poker, não estou distribuindo muitas cartas, mas acho que funciona igual, pois quando jogo sei que não posso repetir cartas.
De fato acredito que elas estão em um List. . e quando sorteio aleatoriamente, observo se elas 'não contem ’ no list.
Acho que é isto.
Mas a solução é esta, usar alguma ‘coleção’ que lhe permita controlar ‘quem tem o que’. Dependendo da coleção, ela pode ter um método próprio para verificar isto.
A solução do vini, me parece uma ‘pilha’., que sempre pega o que está em cima. (que é o monte do baralho).
(porém usando o ‘array’ mesmo como ele falou). Existem pilhas (FIFO -FIRST IN FIRST OUT) SE ENTRA O PRIMEIRO, SAI O PRIMEIRO, SEMPRE SAI O TOPO E ENTRA NO TOPO SE ENTRA ALGO) , filas (LIFO -LAST IN FIRST OUT) (O ULTIMO ENTRA (atrás) E SAI O PRIMEIRO) e
podem fazer alguma diferença. É um estudo dedicado, tive isto em algum momento (em aula).
Dizem que o java tem uma classe STACK que se chama pilha, até abro a discussão aqui, pois deu ‘discussão’ em aula, de certa forma. Pois o professor disse que STACK de java : não é pilha e não funciona como pilha. Mas pelo nome deveria ser. E tivemos que construir uma classe ‘pilha’. Foi dificil aceitar que nesta versão, não exista nada pronto, mas sempre é bom construir ‘a classe’ para entende-la melhor. (FICA A DISCUSSAO)
Acho que a idéia do array parece mais fácil por enquanto.
Ou uma collection LIST mesmo vai depender do estudo aí, que vc tenha.