Comment fonctionne ce nombre premier en Java?

L'extrait de code ci-dessous vérifie si un nombre est un nombre premier. Quelqu'un peut m'expliquer pourquoi cela fonctionne? Ce code a été sur un guide d'étude nous a donnée, pour un Java examen.

public static void main(String[] args)
{    
    int j = 2;
    int result = 0;
    int number = 0;
    Scanner reader = new Scanner(System.in);
    System.out.println("Please enter a number: ");
    number = reader.nextInt();
    while (j <= number / 2)
    {
        if (number % j == 0)
        {
           result = 1;
        }
        j++;
    }
    if (result == 1)
    {
        System.out.println("Number: " + number + " is Not Prime.");
    }
    else
    {
        System.out.println("Number: " + number + " is Prime. ");
    }
}

source d'informationauteur Adam Staples