Java switch case String

Hoje vamos analisar um exemplo de Java Switch Case String. Sendo um programador Java, eu entendo a importância da String e quantas vezes ela é usada para fluxo condicional. Seja para ter um método simples que se comporta de maneira diferente para diferentes Strings de entrada, ou uma classe controladora de Servlet para verificar a ação de entrada e processá-la de acordo, usamos String e a comparamos para determinar o fluxo.

Java Switch Case

O switch case em Java é uma maneira elegante de codificar para fluxo condicional, assim como as condições if-else. Antes do Java 7, o único meio de alcançar fluxo condicional baseado em String era usando condições if-else. Mas o Java 7 melhorou o switch case para suportar também Strings.

Exemplo de Java Switch Case com String

Aqui estou fornecendo um programa Java que mostra o uso de String em declarações de switch case em Java. Para comparação, também estou fornecendo 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)

Os pontos-chave a saber para o switch case String em Java são:

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

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

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