I'm trying to only accept numbers from a user. This code works for giving them an error message if they enter a letter. But it doesn't work for if they hit Enter or just white space. I've tried initializing a String called test as null and then setting scnr.nextLine() = test, and then checking if test is empty, but I didn't understand how to keep the rest of the program operating correctly when I did that. Scanner is very tricky to me. Please help!
        double mainNumber = 0;
        System.out.print("Enter a number: ");
            if (scnr.hasNextDouble() ){
                mainNumber = scnr.nextDouble();
                System.out.println(mainNumber);
                scnr.nextLine();
            }
            else {
                System.out.println("Sorry, please enter a number.\n");
                scnr.nextLine();
            }