Por que meu algoritmo do ano bissexto não está funcionando (Java)? [duplicado]

Esta pergunta já tem uma resposta aqui:

Código Java para calcular o ano bissexto 21 respostas

Aqui está o que eu tenho:

Scanner input = new Scanner(System.in);
    System.out.print("Enter a year: ");
    int Year = input.nextInt();
    System.out.print("Enter a month (first three letters with the first"
            + " letter uppercase): ");
    String Month = input.next();

    String ThirtyOne = "Jan" + "Mar" + "May" + "Jul" + "Aug" + "Oct" + "Dec";
    String DaysThirtyOne = ThirtyOne.substring(21) + "31";

    String Thirty = "Apr" + "Jun" + "Sep" + "Nov";
    String DaysThirty = Thirty.substring(12) + "30";

    String TwentyEight = "Feb";
    String DaysTwentyEight = TwentyEight.substring(3) + "28";
    String DaysLeapYear = TwentyEight.substring(3) + "29";


    boolean isLeapYear = ((Year % 4 == 0) && (Year % 100 != 0) && (Year % 400 == 0));

    if (ThirtyOne.contains(Month)) {
        System.out.println(Month + " " + Year + " has " + DaysThirtyOne 
                + " days in it.");
    }
    if (Thirty.contains(Month)) {
        System.out.println(Month + " " + Year + " has " + DaysThirty 
                + " days in it.");
    }
    if(TwentyEight.contains(Month)) {
        System.out.println(Month + " " + Year + " has " + DaysTwentyEight 
                + " days in it.");
    }
    if (isLeapYear) {
        System.out.println(Month + " " + Year + " has " + DaysLeapYear 
                + " days in it.");
    }

Eu sou novo em programação, então não ficaria surpreso se esse código parecer imaturo. Enfim, eu tenho o usuário digitar um ano e um mês (três primeiras letras). Criei uma variável booleana para um ano bissexto que diz em qualquer ano que as entradas do usuário precisem ser divisíveis por 4, 100 e 400. Em seguida, criei uma instrução if para se for um ano bissexto para imprimir "Fevereiro (qualquer ano as entradas do usuário) tem DaysLeapYear. " Eu acho que tenho algo errado com meu algoritmo, porque se eu retirar a declaração if do TwentyEight e continuar com o ano bissexto if, o computador nem sequer imprime quantos dias Feb teria se fosse um ano bissexto . Mais uma vez, acho que estou errado no algoritmo, mas poderia estar em outro lugar e eu estava esperando uma nova olhada nisso para ver se alguém vê algo que eu não sou, já que sou novo nisso, afinal.

questionAnswers(1)

yourAnswerToTheQuestion