Diskuze: string chyba
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 3 zpráv z 3.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Parsování příkladů správně je sviňárna, jde o to, abys nad tím několik hodin dumal a vymyslel, jak to správně zachytit a správně použít. Proto ti asi nepomůžu s tím, jak to vyřešit, ale zde máš chybu:
StringIndexOutOfBoundsException
Říká ná to, že jsme něco chtěli hledat na Stringu podle indexu, ale zadali jsme neplatný index.
at java.lang.String.charAt(.....)
Výborně, a už i víme, kterou metodu jsme použili špatně! Tak hledáme v kódu, hledáme... A narazíme na toto:
if (rovnice.charAt(i - 1) == '-')
Není náhoda, kdy se o stalo, přesněji při iterování, když to bylo u prvního prvku. Ten prvek má index 0. Když to kontrolovalo podmínku
if (rovnice.charAt(i + 1) == 'x' && i > rovnice.indexOf("="))
Tak to prošlo dál, přeci znak na pozici 1 je "x". Ale když se to dostalo
k naší špatné podmínce, tak se to kouklo na znak na pozici -1 a bum, už tu
byl problém.
Vyřešit by se to dalo možná zavedením podmínky, která by vyřešila tento
konkrétní případ, ale to je jenom záplatování, a třeba je těch děr
více... To se musí poté už odskoušet.
díky, ale kdyby někdo věděl jak to udělat klidně sem pište, jinak se to budu snažit udělat
Zobrazeno 3 zpráv z 3.