[RESOLVIDO] Iniciante - dúvida - Condição do IF

Sou novato, ainda aprendendo Java, estou fazendo um exercício e não estou conseguindo chegar ao resultado esperado, que é entrar no IF e cálcular o valor para o sexo masculino, mesmo digitando M, nunca entra no IF. Não sei por qual motivo não esta caindo na condição do IF, sempre indo para o Else.

import java.util.Scanner;

@SuppressWarnings(“unused”)
public class aula0007 {

private static Scanner in2;
private static Scanner in1;

public static void main(String[] args) {
	System.out.println("Informe a idade do seu cachorro: " );
	in1 = new Scanner (System.in);
	int idadeCachorro = in1.nextInt();
	
	System.out.println("Informe o sexo do seu cachorro, (M)Masculino e (F)Feminino: " );
	in2 = new Scanner (System.in);
	String sexoCachorro = in2.next().toUpperCase();
	
	if(sexoCachorro == "M" ) {
	idadeCachorro = idadeCachorro * 15;
	System.out.println("Seu cachorro têm "+idadeCachorro+" anos.");
	
	} else {
	idadeCachorro = idadeCachorro * 20;
	System.out.println("Seu cachorro têm "+idadeCachorro+" anos.");	
}

}
}

Troca o in2.next, por in2.nextLine();

O equals na String, precisa ser .equals. Então:

if (sexoCachorro.equals("M"){
    idadeCachorro = idadeCachorro * 15;
    System.out.println("Seu cachorro têm "+idadeCachorro+" anos.");
} else {
    idadeCachorro = idadeCachorro * 20;
    System.out.println("Seu cachorro têm "+idadeCachorro+" anos.");	
}
1 curtida

Muito Obrigado, o .equals resolveu tudo…rs

1 curtida