Задачу решила по образцу и методом тыка. Не понимаю почему в условии к if надо писать if ((checkYear % 400) == 0) . Вопрос именно почему два знака равно. И почему, если написан один знак равно идея ругается Incopetible types. Required boolean. Found int. Почему операцию деления без остатка надо брать в круглые скобки? ведь даже по математике сначала делится, а потом сравнивается. Или нет?
package com.javarush.task.task04.task0414;

/*
Количество дней в году
*/

import java.io.*;

public class Solution {
    public static void main(String[] args) throws Exception {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String year = reader.readLine();
        int checkYear = Integer.parseInt(year);
        if ((checkYear % 400) = 0) {
            System.out.println("количество дней в году: 366");
        }
        else if ((checkYear % 100) == 0) {
            System.out.println("количество дней в году: 365");
        }
        else if ((checkYear % 4) == 0) {
            System.out.println("количество дней в году: 366");
        }
        else {
            System.out.println("количество дней в году: 365");
        }
    }
}