Utilizando Switch Expression
package variaveisetipos;
import java.util.Scanner;
public class CadastroDeLivros {
public static void main(String[] args) {
String titulo;
String autor;
int paginas;
double preco;
char categoria;
String categoriaLida = null;
Scanner leitura = new Scanner(System.in);
System.out.println("CADASTRO DE LIVROS");
System.out.print("Título do Livro: ");
titulo = leitura.nextLine();
System.out.print("Autor: ");
autor = leitura.nextLine();
System.out.print("N° de Páginas: ");
paginas = leitura.nextInt();
System.out.print("Preço: ");
preco = leitura.nextDouble();
leitura.nextLine();
boolean categoriaValida = false;
do {
String menu = """
Selecione a Categoria:
F - Ficção
N - Não-ficção
T - Tecnologia
H - História
""";
System.out.println(menu);
categoria = leitura.next().charAt(0);
categoriaLida = switch (categoria) {
case 'F', 'f' -> "Ficção";
case 'N', 'n' -> "Não-ficção";
case 'T', 't' -> "Tecnologia";
case 'H', 'h' -> "História";
default -> null;
};
if (categoriaLida != null) {
categoriaValida = true;
} else {
System.out.println("\nCategoria Inválida. Digite Novamente.\n");
}
} while (!categoriaValida);
System.out.println("\n--- LIVRO CADASTRADO ---");
System.out.println("Título: " + titulo);
System.out.println("Autor: " + autor);
System.out.println("Páginas: " + paginas);
System.out.println("Preço: R$ " + preco);
System.out.println("Categoria: " + categoriaLida);
leitura.close();
}
}