Я хочу, чтобы программа запускалась, только если она получает 'y', 'Y', 'N' или 'n'. Это не работает для других персонажей. Однако, когда пользователь пишет более 1 буквенное слово с помощью y или n (например, yddh, ndhdh и т. Д.), Программа все равно запускается. Пожалуйста, предложите, что я могу сделать. Я попытался взять 'a' в качестве String, но в операторе if-else он показал ошибку, потому что строку нельзя сравнить с char с оператором ==.
import java.util.Scanner;
class Main {
static char a;
public static void main(String[] args) {
System.out.println("Do you want to play this quiz?");
System.out.println("Type 'Y'for Yes or 'N' for no. It's case Insensitive.");
Scanner sc=new Scanner(System.in);
a=sc.next().trim().charAt(0);
if (a=='n'||a=='N')
{System.out.println("Thanks for downloading!");
System.exit(0);}
else if ((a !='n'&&a !='N') && (a !='y'&& a !='Y'))
{System.out.println("Invalid Syntax");
System.exit(0);}
else if(a=='y'||a=='Y')
{System.out.println("Welcome to the quiz");}
}
}