Вы изменяете isWeekend
при визуализации компонента, поэтому вызывает повторную визуализацию компонента, я думаю, что это вызывает бесконечный цикл.
Не рассчитывайте isWeekend
как часть dayOfWeek
. Я думаю, что лучшим решением было бы создание другого метода.
РЕДАКТИРОВАТЬ: как предлагается в комментарии, использование вычисленных значений, вероятно, является еще лучшим решением.