Comparando conjunto de valores

6 respostas
jubei

Olá, gostaria de saber se existe uma forma de comparar um valor a um conjunto de valores sem precisar utiliar varios ||.
tipo x = (‘1’,‘2’,‘3’) no caso de uma String ou valores numericos.

6 Respostas

B

Os valores podem estar dentro de um array ou uma coleção. Depois rode um for comparando cada o valor a cada um. Dependendo do caso dá pra otimizar, sem precisar comparar todos os valores.

jubei

Obrigado, mas assim vai aumentar a mão de obra. Estou procurando algo que diminua o processo.

thiagocg

Se vc fizer um array de Character acho q da pra vc comparar com o método contains!
com char primitivo acho q não funciona pq o constains compara objetos.

T

Não tem de usar nada de “for”.

import java.util.*;

class Exemplo {
    public static void main(String[] args) {
        Set<String> valores = new HashSet<String>(Arrays.asList(new String[]{
            "x", "y", "z"
        }));
        String s = "y";
        if (valores.contains (s)) {
             System.out.println (s + " está contido na coleção");
        } else {
             System.out.println (s + " não está contido na coleção");
        }
    }
}
thiagocg
thingol:
Não tem de usar nada de "for".
import java.util.*;

class Exemplo {
    public static void main(String[] args) {
        Set<String> valores = new HashSet<String>(Arrays.asList(new String[]{
            "x", "y", "z"
        }));
        String s = "y";
        if (valores.contains (s)) {
             System.out.println (s + " está contido na coleção");
        } else {
             System.out.println (s + " não está contido na coleção");
        }
    }
}

Eu havia citado usar Character mas uma coleção de String tb funcionaria perfeitamente, essa é a idéia de usar o contains!!!

jubei

Muito bom, obrigado.

Criado 13 de outubro de 2008
Ultima resposta 14 de out. de 2008
Respostas 6
Participantes 4