Procedimento que determina o maior algarismo de um número:

Saudações, peço ajuda em ideias ou soluções de um exercício de Java que não consigo resolver.
A questão é para criar um procedimenti de um "int maiorAlgarismo(int n) que assume que n é maior que 0, e devo determinar o maior algarismo de n (por ex: maior algarismo de 2561 é 6) mas eu não consigo uma maneira correta de colocar isto no Java e dar um resultado correto.

Vc tem alguma restrição à uso métodos da plataforma? O parâmetro n tem um limitante superior?

Segue uma alternativa:



public class Main {

    public static void main( String[] args ){
	// TODO Auto-generated method stub


	int numero = 2673914;

	// converte para string
	String numString = Integer.toString(numero);


	// cria um array separando os numeros em posições individuais
	char[] caracteres = numString.toCharArray();


	// Crio uma variavel temporaria que vai receber o valor do maior
	// numero sempre que o teste der positivo
	int maior = 0;
	for ( char c : caracteres ) {

	    // aqui uma gambiarrinha. Para transformar um char em string apenas somei
	    // com uma string vazia e em seguida fiz um parse.int para transformar em
	    // numero novamente e possibilitar a comparação
	    int newint = Integer.parseInt(c + "");
	    if( newint > maior ) {
		maior = newint;
	    }
	}

	// imprimo o maior resultado
	System.out.println("O maior numero da sequencia é : " + maior);


    }

}