Boa noite,
Estou praticando condicional If...Else. Pois bem, fiz um programa que pergunte o preço de 3 produtos e no fim informe para comprar o mais barato. Bem, minha dúvida é como solucionar o caractere especial que vem no console, vide abaixo.
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Boa noite,
Estou praticando condicional If...Else. Pois bem, fiz um programa que pergunte o preço de 3 produtos e no fim informe para comprar o mais barato. Bem, minha dúvida é como solucionar o caractere especial que vem no console, vide abaixo.
Olá Cleice,
Esse problema com caracteres especiais são comuns em programas Java que são executados no console. Uma solução para isso é definir o encoding correto para o console.
No caso do Eclipse, você pode clicar com o botão direito na classe que está executando, selecionar "Run As" e depois "Run Configurations". Na janela que abrir, selecione a aba "Common" e em "Encoding" escolha a opção "UTF-8".
Além disso, uma possível solução é definir explicitamente a codificação do console Java para UTF-8. Você pode fazer isso adicionando a seguinte linha de código no início do seu arquivo Java:
System.setProperty("console.encoding", "UTF-8");Dessa forma, o console Java será configurado para usar a codificação UTF-8, que suporta caracteres acentuados.
Espero ter ajudado a esclarecer sua dúvida.
Uma ótima semana e bons estudos. 😊 🚀
Oi Akemi, boa tarde
A primeira opção do "Run As" > "Run Configurations" eu já havia achado na internet é solucionou. Porém tenho que fazer para todo arquivo que vou compilar.
A segunda opção eu coloquei no meu código, vide abaixo. Mas não surtiu efeito ! Estou enviando o código para você compilar e vê se realmente funciona com setProperty
import java.util.Scanner;
public class Exer08 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.setProperty("console.encoding", "UTF-8");
System.out.println("Quanto custa o produto 1?");
double produto1 = scan.nextDouble();
System.out.println("Quanto custa o produto 2?");
double produto2 = scan.nextDouble();
System.out.println("Quanto custa o produto 3?");
double produto3 = scan.nextDouble();
if (produto1 < produto2 && produto1 < produto3) {
System.out.println("Você deve comprar o produto 1 porque custa " + produto1);
} else if (produto2 < produto1 && produto2 < produto3) {
System.out.println("Você deve comprar o produto 2 porque custa " + produto2);
}else {
System.out.println("Você deve comprar o produto 3 porque custa " + produto3);
}
}
}