Switch

Switch (JAVA)

O switch consegue atribuir um valor a uma variável?

eu fiz assim, não funciona :frowning:

exemplo:

switch(opcao1){
			case 1:
			lanche = 6;
				break;
			case 2:
			lanche = 8;
				break;
			case 3:
			lanche = 10;
				break;
			case 4:
			lanche = 12;
				break;
			case 5:
			lanche = 15;
				break;
			default:
                                break;
}

Supondo que essa é a pergunta (faltou uma interrogação), dentro de um case de um switch você pode fazer atribuição a variáveis, exatamente como você fez.

Se não é essa a dúvida, explique melhor o que quer saber.

Abraço.

Eu editei o post, então eu fiz exatamente assim e está dando erro :frowning:
Ai eu decidi fazer assim:
import java.util.Scanner;
public class Cardapio{
public static void main(String[] args){
int opcao1, opcao2, quantidade1, quantidade_bebida;
String nome;
double conta1, conta2, escolha_lanche, quantidade_lanche;

    		System.out.println("----------Tokybas Lanches----------");

    		Scanner ler = new Scanner(System.in);
    		System.out.print("Seja bem vindo, favor digitar seu nome: ");
    		nome = ler.nextLine();

    		System.out.println("--------------Tokybas---------------");
    		System.out.println("1- X Burguer R$6,00");
    		System.out.println("2- X Salada R$8,00");
    		System.out.println("3- X Bacon R$10,00");
    		System.out.println("4- X Tudo R$12,00");
    		System.out.println("5- X Duplo R$15,00");
    		System.out.println("--------------Tokybas---------------");

    		System.out.print("Digite o número equivalente a opção de lanche desejada: ");
    		opcao1 = ler.nextInt();

    		switch(opcao1){
    			case 1:
    			escolha_lanche = 6.00;
    				break;
    			case 2:
    			escolha_lanche = 8.00;
    				break;
    			case 3:
    			escolha_lanche = 10.00;
    				break;
    			case 4:
    			escolha_lanche = 12.00;
    				break;
    			case 5:
    			escolha_lanche = 15.00;
    				break;
    			default:
    				System.out.println("Opção inválida");
    				break;
    		}

    		System.out.print("Digite quantos lanches você vai querer: ");
    		quantidade1 = ler.nextInt();

    		switch(quantidade1){
    			case 1:
    			quantidade_lanche = 1;
    				break;
    			case 2:
    			quantidade_lanche = 2;
    				break;
    			case 3:
    			quantidade_lanche = 3;
    				break;
    			case 4:
    			quantidade_lanche = 4;
    				break;
    			case 5:
    			quantidade_lanche = 5;
    				break;
    			case 6:
    			quantidade_lanche = 6;
    				break;
    			case 7:
    			quantidade_lanche = 7;
    				break;
    			case 8:
    			quantidade_lanche = 8;
    				break;
    			case 9:
    			quantidade_lanche = 9;
    				break;
    			case 10:
    			quantidade_lanche = 10;
    				break;
    			default:
    				System.out.print("Valor inválido, sistema contabilizou 1 lanche.");
    				break;
    		}
    		conta1 = (escolha_lanche * quantidade_lanche);
    	}
    }

agora ele funcionou, porém ele não faz conta lá em baixo… (é um trabalho de curso.)

Nunca mistures nextLine() e qualquer outro método (nextInt() por exemplo) de um Scanner quando estás a ler do teclado. Usa somente nextLine() e converte os valores com Integer.parseInt().

1 curtida

@pmlm Ok vlw mano <3