मैं अपने स्विच केस लूप को फिर से बनाने की कोशिश कर रहा हूं, अगर उपयोगकर्ता को डिफ़ॉल्ट मिलता है

Aug 18 2020

मुझे उपयोग करने के लिए एक लूप नहीं मिल सकता है जो इसे स्विच केस की शुरुआत में वापस लाएगा और बार-बार जब तक उपयोगकर्ता किसी एक विकल्प का उपयोग करके जवाब नहीं देता, तब तक कोई भी मदद बहुत बढ़िया होगी! धन्यवाद। (मैंने भी एक बार करते हुए लूप का उपयोग करने की कोशिश की है जो किसी ने सुझाव दिया है लेकिन यह केवल डिफ़ॉल्ट को स्पैम लगता है।) ((जो मैंने कोड में छोड़ दिया है)

public static void main(String[] args) {

    Scanner input = new Scanner(System.in);


    System.out.println("    Welcome To The Choices Game...    ");
    System.out.println("Please enter your name: ");

    String playerName = input.nextLine();

    System.out.println("What is " + playerName + "'s" + " favorite pet?");
    System.out.println("a. Dog \nb. Cat");

    //Choice of choosing a dog or a cat
    String pet = input.next();
    do {


        switch (pet.charAt(0)) {
            case 'a' -> {
                System.out.println("What is your dog's name? ");
                String dogsName = input.next();
                System.out.println("Your Character's Name is: " + playerName + "\nYour Pet's Name is: " + dogsName);
                break;
            }
            case 'b' -> {
                System.out.println("What is your cat's name? ");
                String catsName = input.next();
                System.out.println("Character Name: " + playerName + "\nPet Name: " + catsName);
                break;
            }
            default -> System.out.println("That is not a valid option. Please choose again.");
        }

    } while (pet.charAt(0) != 'a' && pet.charAt(0) != 'b');

    input.close();

}

जवाब

1 notescrew Aug 18 2020 at 00:03

आपको डॉक लूप के अंदर कैट / डॉग (विकल्प या विकल्प बी) के लिए इनपुट लेना होगा ताकि बाद में गलत इनपुट कोड अपडेट किए गए इनपुट के लिए पूछ सकें। नीचे के अनुसार:

public static void main(String[] args) {

        Scanner input = new Scanner(System.in);

        System.out.println("    Welcome To The Choices Game...    ");
        System.out.println("Please enter your name: ");

        String playerName = input.nextLine();

        System.out.println("What is " + playerName + "'s" + " favorite pet?");
        System.out.println("a. Dog \nb. Cat");

        // Here is change in code
        String pet = null;
        do {
            // Choice of choosing a dog or a cat
            // Here is change in code
            pet = input.next();
            switch (pet.charAt(0)) {
            case 'a': {
                System.out.println("What is your dog's name? ");
                String dogsName = input.next();
                System.out.println("Your Character's Name is: " + playerName + "\nYour Pet's Name is: " + dogsName);
                break;
            }
            case 'b': {
                System.out.println("What is your cat's name? ");
                String catsName = input.next();
                System.out.println("Character Name: " + playerName + "\nPet Name: " + catsName);
                break;
            }
            default: {
                System.out.println("That is not a valid option. Please choose again.");
            }
            }

        } while (pet.charAt(0) != 'a' && pet.charAt(0) != 'b');

        input.close();

    }