No lugar do if, utilizei o switch. Ficou assim:
public void exibeMenu() {
var menu = """
*** OPÇÕES ***
1 - Carro
2 - Moto
3 - Caminhão
4 - Sair
Digite uma das opções para consultar:
""";
System.out.println(menu);
String endereco = "";
while (true) {
var opcao = leitura.nextLine();
switch (opcao) {
case "1":
endereco = URL_BASE + "carros/marcas";
System.out.println("Consulta de carros...");
break;
case "2":
endereco = URL_BASE + "motos/marcas";
System.out.println("Consulta de motos...");
break;
case "3":
endereco = URL_BASE + "caminhoes/marcas";
System.out.println("Consulta de caminhões...");
break;
case "4":
break;
default:
System.out.println("Opção inválida. Escolha uma das opções de 1 a 4.");
continue;
}
if(opcao.equals("4")) {
System.out.println("Até a próxima consulta.");
break;
}
var json = consumoApi.obterDados(endereco);
System.out.println(json);
break;
}
}
Não fiz tratamento de erro, mas com o switch o usuário só escolhe 1, 2, 3 ou 4. Achei melhor do que ele ter que digitar carro, moto ou caminhão.