fw.jogoCartas
Class BaralhadorEspecial

java.lang.Object
  |
  +--fw.jogoCartas.BaralhadorEspecial

public class BaralhadorEspecial
extends java.lang.Object
implements BaralhadorIF, java.io.Serializable

Uma estrategia para baralhar um baralho de forma que todos os reis estejam entre as 13 primeiras cartas a serem retiradas do baralho.

See Also:
Serialized Form

Field Summary
private static int REI
           
 
Constructor Summary
BaralhadorEspecial()
          Cria um novo BaralhadorEspecial.
 
Method Summary
 void baralhar(BaralhoIF baralho)
          Baralha (traça) o baralho.
 void baralhar(long semente, BaralhoIF baralho)
          Baralha (traça) o baralho de acordo com um numero (semente).
private  java.util.Random geradorRandomico()
          Cria e retorna um gerador de números randômicos.
private  java.util.Random geradorRandomico(long semente)
          Cria e retorna um gerador de números randômicos que gera números randômicos a partir de uma semente.
private  java.util.Vector geraNumerosRandomicos(java.util.Random geradorRandomico)
          Gera 4 números randomicos entre 0 e 12 e os retorna.
private  void insereReis(java.util.Vector b, java.util.Vector r, BaralhoIF baralho)
          Insere os reis de forma que todos eles estejam entre as 13 primeiras cartas a serem retiradas do baralho.
private  void insereReis(java.util.Vector b, java.util.Vector r, BaralhoIF baralho, long semente)
          Insere os reis de forma que todos eles estejam entre as 13 primeiras cartas a serem retiradas do baralho de acordo com um numero (semente).
private  void ordena(java.util.Vector nums)
          Ordena os elementos de um vetor (ordem crescente).
 java.lang.String toString()
          Retorna um identificador deste tipo de objeto.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

REI

private static int REI
Constructor Detail

BaralhadorEspecial

public BaralhadorEspecial()
Cria um novo BaralhadorEspecial.
Method Detail

baralhar

public void baralhar(BaralhoIF baralho)
Baralha (traça) o baralho.
Specified by:
baralhar in interface BaralhadorIF
Parameters:
baralho - O baralho a ser baralhado.

insereReis

private void insereReis(java.util.Vector b,
                        java.util.Vector r,
                        BaralhoIF baralho)
Insere os reis de forma que todos eles estejam entre as 13 primeiras cartas a serem retiradas do baralho.
Parameters:
b - Um array que contém todas as cartas de um baralho exceto os reis.
r - Um array contendo todos os reis de um baralho.

geraNumerosRandomicos

private java.util.Vector geraNumerosRandomicos(java.util.Random geradorRandomico)
Gera 4 números randomicos entre 0 e 12 e os retorna.
Returns:
Um vetor contendo 4 números aleatórios entre 0 e 12 ordenados.

ordena

private void ordena(java.util.Vector nums)
Ordena os elementos de um vetor (ordem crescente).
Parameters:
nums - Um vetor contendo os números a serem ordenados.

geradorRandomico

private java.util.Random geradorRandomico()
Cria e retorna um gerador de números randômicos.
Returns:
Um gerador de números randômicos.

baralhar

public void baralhar(long semente,
                     BaralhoIF baralho)
Baralha (traça) o baralho de acordo com um numero (semente).
Specified by:
baralhar in interface BaralhadorIF
Parameters:
baralho - O baralho a ser baralhado.
semente - A semente que sera' utilizada para tracar o baralho.

insereReis

private void insereReis(java.util.Vector b,
                        java.util.Vector r,
                        BaralhoIF baralho,
                        long semente)
Insere os reis de forma que todos eles estejam entre as 13 primeiras cartas a serem retiradas do baralho de acordo com um numero (semente).
Parameters:
b - Um array que contém todas as cartas de um baralho exceto os reis.
r - Um array contendo todos os reis de um baralho.
semente - A semente utilizada para tracar o baralho.

geradorRandomico

private java.util.Random geradorRandomico(long semente)
Cria e retorna um gerador de números randômicos que gera números randômicos a partir de uma semente.
Returns:
Um gerador de números randômicos.

toString

public java.lang.String toString()
Retorna um identificador deste tipo de objeto.
Specified by:
toString in interface BaralhadorIF
Returns:
Uma cadeia de caracteres que identifica o tipo de baralhador.
Overrides:
toString in class java.lang.Object