Swicth

16 respostas
Valdinho_Costa

ei galera alguem pode me dizer como eu faço pra usa o swicth com String??

16 Respostas

Javabuntu

se você conhecer bem o java deve saber que no argumento do bloco switch é permitido somente:

char, byte, short, int.

Reilander

po cara, esse Valdinho eh engraçado, tem cara de pagodeiro

felipealbuquerque

Javabuntu:
se você conhecer bem o java deve saber que no argumento do bloco switch é permitido somente:

char, byte, short, int.

Enums também podem ser utilizados em um bloco switch. Os valores dos cases devem ser constantes definidas em tempo de compilação.

Javabuntu

felipealbuquerque:
Javabuntu:
se você conhecer bem o java deve saber que no argumento do bloco switch é permitido somente:

char, byte, short, int.

Enums também podem ser utilizados em um bloco switch. Os valores dos cases devem ser constantes definidas em tempo de compilação.

verdade…

gpd38

Usando codigo para ser mais exato, seria + ou - assim

//Exemplo
// . . .
// . . .
// . . .
int valor = 2; /*Numero neste exemplo*/
int x = 0;

switch(valor){

case 1: 
x = Math.pow(1,valor);
break;

case 2:
x = Math.pow(2,valor);
break;

case 3:
x = Math.pow(3,valor);
break;

case 4:
x = Math.pow(4,valor);
break;

case 5:
x = Math.pow(5,valor);
break;

case 6:
x = Math.pow(6,valor);
break;

default:{
int num = IO.readInt("Entre com um numero");
x = Math.pow(num,valor);
//So entra aqui se nenhum dos cases for o que procura
}

}//fim switch(valor)
LPJava

ou seja, valores Constantes para os cases!!

wesley.comput

Antes de responder gostaria de falar que achei o comentário do Reilander totalmente infrutífero, existe aquele velho ditado, não ajuda, então não atrapalha.

Bom vamos ao que interessa.
Valdinho é o seguinte Java existem 8 tipos primitivos:

  1. Inteiros
    
    byte - (8 bits)
    
    char - Apenas um caractere (16 bits)
    
    short - Números inteiros (16 bits)
    
    int - Números inteiros (32 bits)
    
    long - Números inteiros (64 bits)
    
  2. Ponto flutuante
    float - Precisão simples (32 bits)
    double Dupla precisão (64 bits)

  3. Valor lógico (booleano)
    boolean - Pode assumir o literal true ou false

No bloco switch ele aceita todos os tipos inteiros menos o tipo long que é muito grande, na verdade não é por ele ser muito grande mais por própria opção da Sun. Se você quer usar o valor que esta em uma String no switch, você deverá fazer a conversão para um destes tipos inteiros (menos o long). Dê preferência ao tipo int, já que ele é o maior de todos, assim acho que não terá problema com números muito grandes. Segue um exemplo:

String strValor = "12";
int intValor = Integer.parseInt(strValor);
switch(intValor) {
       case 12 : System.out.println("teste");
         break;   
}
danvensi

Oh pessoal blz? TO começando com Java, e to estudando e começando a compreender como funciona a estrutura para Programar em Java.
A explicação do Wesley foi show!

Bom quando explica realmente, pq mesmo quando responde a nossa pergunta, ficamos com duvidas, pois ñ sabemos o que poderia fazer a + o comando.

E me fala 1 coisa quando eu sei que preciso usar o switch, em que ocasião?

E oq serve o switch, do e while!

Valeu pela paciencia e atenção
abração

B

danvensi: http://www.caelum.com.br/caelum/curso-11.jsp <- Baixe a apostila.

Veja o capítulo 3 (e de quebra o resto da apostila também).

danvensi

Valeu pela ajuda, más ta fora do ar esse pdf oh =/

Se tiver manda pelo msn?

Valeu pelo help!
Abração

B

Baixe uma apostila aqui: http://www.caelum.com.br/caelum/curso-11.jsp

pintofree

po cara, esse Valdinho eh engraçado, tem cara de pagodeiro²

danvensi

valeu renrutal!
Eu estou estudando a apostila a mesma, só que é a versão antiga, ele pediu para saber quando usar o while, do e o switch!

Valeu pela ajuda
Eu estudando essa apostila já ajuda mto em aprender há programar java, tipo, estudando essa apostila e a web ( eu quero programar voltado a web), substitui fazer um curso na caleum ou globalcode?

É realmente ruim estudar com eles, pois eu sinto dificuldades as vezes e vejo que fico dependendo realmente de alguem rs

Um amigo meu que está me dando um help para estudar Java

kakakak Parece mesmo Pagodeiro :stuck_out_tongue: rs

B

Parece que não tem na apostila… Ok:

do…while é igual ao while, a diferença é que ele entra primeiro no loop e checa a condição só no final, ou seja, sempre entra pelo menos uma vez.

switch pode ser visto como vários if else encadeados, onde você entra com uma condição, que deve ser um tipo primitivo ou enum, e escolhe uma das opções entre vários casos apresentados. Ele também pode pegar mais de um caso em sequencia, caso você esqueça de colocar a palavra-chave break para ele parar o switch.

danvensi

Interessante, já deu uma clareada agora rs
Vc é de SP kra?
Vc manja bem de programação OO pelo jeito e Java tbm

Vc fez curso? Ou estuda por conta?
mto tempo q vc estuda?

Vc tbm trabalha com Java?
Abração

Qq coisa add no msn
[email removido]

wesley.comput

Soh pra complementar o tópico, apartir da versão 1.5 foi incluido o recurso de enumeração ou tipos enumerados, e no bloco switch também eh permitido o uso de enumeração, o que facilita muito na legibilidade do código já que a enumeração eh algo verboso diferente de um numero inteiro que vc nao pode adivinhar o que ele representa a primeira vista.

public enum TipoRegras {
        InserirCliente, InserirProduto, ValidarLogin
}
public static Object getRegra(TipoRegras regra) {
     switch(regra) {
        case InserirCliente : return new InserirCliente();
        case InserirProduto : return new InserirProduto();
         case ValidarLogin   : return new ValidarLogin();
          default             : return null;
      }
}
Criado 11 de maio de 2008
Ultima resposta 27 de out. de 2008
Respostas 16
Participantes 10