for (int i = 0; i < num.length(); i++) {
boolean toCountScale = false;
}
Что-то мне подсказывает что внутри цикла помногу раз инициализировать одну и ту же переменную нехорошо.
Я делаю так:
{
boolean toCountScale = false;
for (int i = 0; i < num.length(); i++) {
}
}