Qual dos dois é o maior

O que me esta acontecer neste programa ele identifica-me o maior e introduz também que são iguais, qual o processo que devo fazer ?


import java.util.Scanner;


public class Programa_13 
{

   
    public static void main(String[] args) 
    {
        
        Scanner s = new Scanner(System.in);
        
        System.out.println("Qual o primeiro valor");
        int valor1 = s.nextInt();
        
        System.out.println("Qual o segundo valor");
        int valor2 = s.nextInt();
        
        if (valor1>valor2)
        System.out.println("O maior é "+valor1);
        
        if (valor2>valor1)
        {
        System.out.println("O maior é "+valor2);
        }
        else
        {
        System.out.println("Os dois numeros são iguas"+valor1+valor2);
        }
        
    }
    
    
}

No seu caso você deve usar um if complexo ou como eu conheço e digo um if encadeado.

ficaria assim.

[code]
if (valor1>valor2){
System.out.println("O maior é "+valor1);

    else if (valor2>valor1)  
    {  
    System.out.println("O maior é "+valor2);  
    }  
    else  
    {  
    System.out.println("Os dois numeros são iguas"+valor1+valor2);  
    } [/code]

O seu acontece o seguinte, se o valor1> valor2 mostra a mensagem que “O Maior é valor1”
Caso o valor1 < valor1 mostra a mensagem que “O maior é valor2”
Porém o seu else é somente para o segundo if e não para os 2. Por isso você deve usar um if encadeado.