NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
jackxl
Člen
Avatar
jackxl:15.11.2015 23:22

Zdar.
Náhodně se mi stává, že při vyčítání pole, ArrayListu, Listu mi Visual Studio na posledním indexu těchto prvků vyhodí vyjímku, že index je mimo hranice. Když to pole ale rozliknu,abych se podíval že index je mimo, tak vidím, že mimo hranice není.
Nestává se vám to taky ? Čím by to mohlo být ? Používám Framework 4 na VS2010.

Odpovědět
15.11.2015 23:22
Žádná hranice není nepřekonatelná.
Avatar
Milan Křepelka
Tvůrce
Avatar
Milan Křepelka:16.11.2015 9:01

Je velmi pravděpodobné že

  • nepoužíváš foreach a ve for to prostě přepískneš
  • používáš for a v průbehu cyklu modifikuješ daný seznam, odstraníš něco ze seznamu

Hoď sem nějaký příklad takového podobného cyklu

 
Nahoru Odpovědět
16.11.2015 9:01
Avatar
jackxl
Člen
Avatar
Odpovídá na Milan Křepelka
jackxl:16.11.2015 21:29
int [] prom = new int [5] {1,2,3,4,5};
int abc = 0;
for(int i=0;i<5;i++)
{
        abc = prom[i];
}

Klasický příklad. Nic nemodifikuji a ani nevkládám mimo. Přičemž na abc = prom[4] to spadne. Nestane se to pokaždé, ale pouze náhodně, takže chyba nemůže být v syntaxi. Vyjímka program zastaví, hodím si to do watch window a vidím, že pro vyjímku není důvod.

Pokud se to objeví ještě někdy v budoucnu, udělám Screen obrazovky.

Nahoru Odpovědět
16.11.2015 21:29
Žádná hranice není nepřekonatelná.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.