Como comparar 3 variáveis em JAVA?

6 respostas Resolvido
xXSAMPXx

Quero comparar 3 variaveis e colocar o valor maior em uma outra variavel.
Fiz assim mas o valor dá sempre o valor do y.

import java.lang.*;

public class MyClass {
    public static void main(String args[]) {
        int x = 10;
        int y = 3;
        int z = 2;
        int a = 0;
        
           a = Math.max(x,y);
           a = Math.max(x,z);
           a = Math.max(y,z);
        
      System.out.println(a);
    }
}

6 Respostas

hugokotsubo
Solucao aceita

O que você teria que fazer é pegar o valor de a e comparar com z:

int a = Math.max(x,y);
a = Math.max(a, z);

Ou seja, primeiro a recebe o maior valor entre x e y. Depois eu vejo se ele é maior que z, o resultado será o maior dos 3.

Poderia ainda ser mais sucinto:

int a = Math.max(Math.max(x, y), z);
xXSAMPXx

obrigado!!

xXSAMPXx

mas e se tivesse um numero indefinido de variaveis?? podia fazer com um ciclo if para comparar as variaveis todas??Por exemplo se tivesse 10 variaveis já era meio extenso

hugokotsubo

Aí compensaria ter um array ou lista, em vez de várias variáveis.

xXSAMPXx

ok obrigado

G

Só completando que o amigo @hugokotsubo com arrays e listas tem uma função chamada .sort() que faz essa comparação já ordena decrescente e crescente.

Criado 22 de março de 2021
Ultima resposta 23 de mar. de 2021
Respostas 6
Participantes 3