Java switch case String

Hoje vamos analisar um exemplo de Java Switch Case String. Sendo um programador Java, eu conheço a importância da String e quantas vezes ela é usada para fluxo condicional. Seja para um método simples que se comporta de maneira diferente para diferentes Strings de entrada, ou para uma classe de controle de Servlet que verifica a ação de entrada e a processa conforme necessário, usamos String e a comparamos para determinar o fluxo.

Caso Switch em Java

O switch case em Java é uma maneira organizada de codificar para fluxo condicional, assim como as condições if-else. Antes do Java 7, a única maneira de realizar um fluxo condicional baseado em String era usando condições if-else. Mas o Java 7 melhorou o switch case para oferecer suporte também a Strings.

Exemplo de Switch Case com String em Java

Aqui estou fornecendo um programa em Java que mostra o uso de String em instruções switch case. Para comparação, estou fornecendo também outro método que realiza o mesmo fluxo condicional usando condições if-else. SwitchStringExample.java

package com.journaldev.util;

public class SwitchStringExample {

	public static void main(String[] args) {
		printColorUsingSwitch("red");
		printColorUsingIf("red");
		// o switch case com String é sensível a maiúsculas e minúsculas
		printColorUsingSwitch("RED");
		printColorUsingSwitch(null);
	}

	private static void printColorUsingIf(String color) {
		if (color.equals("blue")) {
			System.out.println("BLUE");
		} else if (color.equals("red")) {
			System.out.println("RED");
		} else {
			System.out.println("INVALID COLOR CODE");
		}
	}

	private static void printColorUsingSwitch(String color) {
		switch (color) {
		case "blue":
			System.out.println("BLUE");
			break;
		case "red":
			System.out.println("RED");
			break;
		default:
			System.out.println("INVALID COLOR CODE");
		}
	}

}

Aqui está a saída do programa acima.

RED
RED
INVALID COLOR CODE
Exception in thread "main"
java.lang.NullPointerException
	at com.journaldev.util.SwitchStringExample.printColorUsingSwitch(SwitchStringExample.java:24)
	at com.journaldev.util.SwitchStringExample.main(SwitchStringExample.java:10)

Pontos-chave a saber para o switch case String em Java:

  1. Switch case String em Java torna o código mais legível ao remover as múltiplas condições encadeadas if-else-if.
  2. Switch case String em Java é sensível a maiúsculas e minúsculas, a saída do exemplo confirma isso.
  3. O switch case em Java utiliza o método String.equals() para comparar o valor passado com os valores dos casos, portanto, certifique-se de adicionar uma verificação de NULL para evitar NullPointerException.
  4. De acordo com a documentação do Java 7 para Strings no Switch, o compilador Java gera um código de byte mais eficiente para a declaração Switch com String do que para instruções encadeadas if-else-if.
  5. Certifique-se de usar o switch case String em Java apenas quando souber que será usado com o Java 7, caso contrário, lançará uma exceção.

Isso é tudo para o exemplo de switch case String em Java. Dica: Podemos usar o operador ternário em Java em vez do switch para escrever um código mais curto.

Source:
https://www.digitalocean.com/community/tutorials/java-switch-case-string