суть программы в том, что она суммирует введённые числа до тех пор, пока они >=0. Если в цикле while я сначала буду считывать число, а потом суммировать, то при вводе отрицательного числа цикл завершится, но отрицательное число прибавится. Если же строки в цикле поменять местами, то все будет работать как надо и отрицательное число не прибавится. У меня есть догадки почему так происходит, но хочется услышать мнение со стороны.
import java.util.Scanner;

        Scanner read = new Scanner(System.in);
        int sum = 0;
        int enter = 0;
        while (enter >= 0) {
            enter = read.nextInt();
            sum += enter;
        }
        System.out.println(sum);