Switch case com intervalo de valores

3 respostas
R

Pessoal gostaria de saberse é possível no java um case com intervalo de valores.
tipo assim:

[code]
switch(op)
{
case 1..10 : System.out.println("1º intrvalo");
break;
case 11..20 : System.out.println("Intervalo de 11 a 20");
break;
...
}
[code/]

E assim sucessivamente...

3 Respostas

E

Não. Use uma série de ifs.

drsmachado
Sim. O switch irá executar tudo o que encontrar, a partir de uma cláusula verdadeira, até que leia a keyword break ou o bloco chegue ao fim.
int a = Integer.parseInt(JOptionPane.showInputDialog("Valor"));
		switch (a) {
		case 1:
			System.out.println("1");
		case 2:
			System.out.println("2");
		case 3:
			System.out.println("3");
			System.out.println("1º intrvalo");
			break;
		case 4:
			System.out.println("4");
		case 5:
			System.out.println("5");
		case 6:
			System.out.println("6");
			System.out.println("2º intrvalo");
			break;
		default:
			System.out.println("default");
			break;
		}
Mas isso é gambiarra...
R

Pessoal pelo que vi não dá para trabalhar com intevalos maior no case. Nesse caso deve ser utilizado então o if.

Mesmo assim obrigado pelas respostas…

Criado 18 de outubro de 2011
Ultima resposta 18 de out. de 2011
Respostas 3
Participantes 3