Instrução switch resultante em java: 240 (pode não ter sido inicializada)

Eu tenho procurado por uma resposta para isso por um tempo, mas não encontrei nada que realmente ajude o meu caso tão nu comigo:

Eu estou tentando armazenar um valor dentro de uma variável dependendo da entrada:

switch(pepperoni) {

    case 'Y':
    case 'y':
        topping1 = 1;
        break;

    case 'N':
    case 'n':   
        topping1 = 0;
        break;

    default: 

        {
    System.out.print("This is not a valid response, please try again \n");  
    System.out.print("Do you want Pepperoni? (Y/N): ");
    pepperoni = scan.next().charAt(0);
        break;
    }

Eu quero a variáveltopping1 para armazenar o valor 1 se a entrada for 'Y' ou 'y' e para armazenar o valor 0 se a entrada for 'N' ou 'n'

Se a entrada não for nem 'Y', 'y', 'N' nem 'n', quero que ela repita a pergunta até que uma entrada válida seja digitada.

O problema surge quando, mais tarde, no programa, tento imprimir o valor "porque pode não ter sido inicializado", o que faz sentido. (exemplo abaixo)

if(topping1 > 0)
    System.out.println("Pepperoni"); 

// 243: error: variable topping1 might not have been initialized

Eu sei que existem outras maneiras de fazer isso, mas como estou realmente querendo aprender Java, eu tento entender o máximo possível dos fundamentos. Portanto, eu ficaria muito feliz se alguém pudesse me dizer por que isso não funciona e se há uma maneira de fazer isso com uma instrução switch ou correções rápidas.

questionAnswers(4)

yourAnswerToTheQuestion