Ajuda "Caça ao Maior"

Galera dá um help aí nesse algoritmo.

Algumas vezes, torna-se necessário encontrar o maior número conhecido entre um conjunto de números. Sendo assim, utilizando o enquanto, você deverá construir um programa que receba uma quantidade indefinida de números, porém, ao receber o número 0, ele encerrará e imprime o maior número entre todos os recebidos pelo programa.

Assumindo que out é o System.out e in é um Scanner que lê o System.in:

int numero = 0;
int maior = 0;
do {
    out.print("Digite um número: ");
    numero = Integer.parseInt(in.nextLine());
    if (numero > maior || maior == 0) {
        maior = numero;
    }
} while (numero != 0);
out.print("O maior número é: " + maior);