Pilha de Inteiros

Como obtenho o menor valor de uma pilha de uma classe de inteiros? Preciso usar métodos push, pop, e min e depois ja tenho um método que irá imprimir uma lista com os resultados.

public static void main(String[] args) {
		//Criar uma pilha
		Pilha pilhaInteiros = new Pilha();
		
		//Criar variavel que armazena o menor valor. 
		int menorValor;
		
		// Inicializar a variavel com o maior valor, por exemplo:
		menorValor = Integer.MAX_VALUE;
		
		//Solicitar o usuário para difitar os valores da pilha
		int valor = ... ("Digite um número para ser adicionado a pilha");
		
		//Repita o processo de remover da pilha e comparar até a pilha ficar vazia
		....
		
		//Depois que apilha está completa, remova dois elementos para a comparação
		int elemento1 = pilhaInteiros.pop();
		int elemento2 = pilhaInteiros.pop();
		
		//Faça a comparação para ver quem é o menor valor. Pode criar um método se quiser.
		if(elemento1 < elemento2) {
			menorValor = elemento1;
		}else {
			menorValor = elemento2;
		}
	}