[RESOLVIDO] Problema para descobrir o maior e o menor número entre os informados

Estou com dificuldade para resolver a parte de lógica da condição if, preciso descobrir quem é o maior numero e o menor numero entre os informados.

package Exercicio;

import javax.swing.JOptionPane;

public class Ex {
public static void main(String[] args){

    String qnt=" ", num=" ";
    int qntint=0, numint=0, maior=0, menor=1000000000, aux=0, lixo=0;

    qnt = JOptionPane.showInputDialog("Insira a quantidade de vezes que deseja calcular: ");
    qntint = Integer.parseInt(qnt);

    for(int i=0; i<qntint; i++){

        num = JOptionPane.showInputDialog("Insira um número: ");
        numint = Integer.parseInt(num);
        
                 
        if(numint>maior){
            aux=maior;
          	maior=numint;
                if(aux<menor)
                    menor=aux;
        }
        else if((numint<maior)&&(numint<menor)){
            menor=numint;
        }
        else if((numint<maior)&&(numint>menor)){
            lixo=numint;
        }
        
    }
       
    JOptionPane.showMessageDialog(null,"O maior número é: "+maior+"\nO menor número é: "+menor);Texto pré-formatado

}

}

Para que servem as variáveis aux e lixo?

A variável lixo é pra pegar os valores(números) que eu não quero, a aux é porque quando o programa rodar a segunda repetição o valor de entrada pode ser maior que o atual e o atual menor que o menor, nesse caso seria aquele “jogo de trocar” para não se perder um valor. Mas como eu disse, certamente a minha lógica está errada em algum ponto, porque o programa mostra o numero que é maior mas não mostra qual é o menor.

Na minha opinião essas variáveis sao desnecessárias.
Alterei e usando apenas essas condicionais obti o resultado esperado:

		if (num > maior) {
			maior = num;
		} 
		
		if (num < menor) {
			menor = num;
		}
1 curtida

Muito obrigado M4Ur0-Dev, a sua sugestão funcionou perfeitamente, não sei porque eu estava complicando tanto :confused:

Se tiver ficado com alguma duvida pode falar