Cambie la instrucción que produce java: 240 (es posible que no se haya inicializado)

He estado buscando una respuesta a mi alrededor por un tiempo, pero no he encontrado nada que realmente ayude a mi caso tan claro conmigo:

Estoy tratando de almacenar un valor dentro de una variable dependiendo de la 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;
    }

Quiero la variablesuperando1 para almacenar el valor 1 si la entrada es 'Y' o 'y' y para almacenar el valor 0 si la entrada es 'N' o 'n'

Si la entrada no es 'Y', 'y', 'N' ni 'n', quiero que repita la pregunta hasta que se ingrese una entrada válida.

El problema surge cuando, más adelante, en el programa, intento imprimir el valor "porque podría no haberse inicializado", lo que de alguna manera tiene sentido. (ejemplo abajo)

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

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

Me doy cuenta de que hay otras formas de hacerlo, pero como tengo muchas ganas de aprender Java, trato de comprender la mayor cantidad posible de los aspectos fundamentales. Por lo tanto, me sentiría realmente feliz si alguien pudiera decirme por qué esto no funciona y si hay una manera de hacerlo con una declaración de cambio o soluciones rápidas.

Respuestas a la pregunta(4)

Su respuesta a la pregunta