se s�o apenas 6 valores, a estrutura � t�o pequena que qualquer abordagem ser� satisfat�ria e semelhante em tempo de execu��o... O mais simples talvez seja usar o m�todo "indexOf" da classe String:
 
static final String VALORES_VALIDOS = "ABCDEF";
 
private boolean valido(char valor)
{
    if(VALORES_VALIDOS.indexOf(valor)>-1)
    {
        return true;
    }
    return false;
}
 
 
na pr�tica, isso far� o mesmo servi�o de percorrer um array e comparar todos os elementos tentando encontrar um padr�o igual.
 
outra alternativa de comparar caracteres � pelo seu valor decimal:
 
private boolean valido(char valor)
{
    // 65 = 'A' e 70 = 'F'
    if(valor<65 || valor >70)
    {
        return false;
    }
    return true;
}
 
 
 -----Mensagem original-----
De: buscandoconhecimento [mailto:[EMAIL PROTECTED]]
Enviada em: sexta-feira, 19 de julho de 2002 08:37
Para: java-list
Assunto: Fw: [java-list] Testar valor

    D� uma olhadinha na classe java.util.Vector. Ela possui um m�todo contains q retorna true se o elemento em quest�o estiver contido no vetor ou false caso contr�rio.
    Lembrando q esta classe trabalha com valores no formato Object, sendo necess�rio vc fazer algun cast para String/Char de acordo com seu uso.
    Espero ter ajudado.

*********************
Um abra�o...
"Eduquem as crian�as e n�o
ser� preciso castigar os  homens"
 (Pit�goras)
   
----- Original Message -----
Sent: Thursday, June 20, 2002 5:01 PM
Subject: [java-list] Testar valor

Ol� Amigos,
 
        Tenho uma vari�vel que pode receber apenas 6 valores espec�fico, existe alguma maneria de verificas se o valor atribuido � v�lido sem utilizar IFs ou SWITCHs ?
        Gostaria de fazer algo assim:
 
        private char VALORES[] = {'A','B','C','D','E','F'};
       preivate char tipo;
       
        public void getTipo( char var){
            if( var in VALORES)
                tipo = var;
        }
 
 
Gideoni Hudson  ": ' )
PrevCaixa
Tel.: 31 3226-8707

Responder a