Jak můžete říct že správná odpověď je false? Ten kód koukne na to jestli se 1==1, řekne ano ale pak nic nevrací, tzn na return nikdy nenarazí. Může si teda vrátit co chce.
Řešení je v celku jednoduché. Vždy používat return ve všech částech kde by jste měl. Mnoho IDE by vás to ani nenechalo zkompilovat, vyjela by hláška jako „Not all parts of the code return a value.“ Pokud nic nenastavíte, program si asi dělá trochu co chce.
Jinak tu funkce upravená tak aby vždy něco vrátila by vapadala takto ale to asi víte.
boolean TestFunction() {
if (true) {
return true;
break;
}
return false;
}
Pokud to je zakomentované tak samozřejmě nevrátí nic…