Array Index Out of Bounds Exception i Java

Java-programmer bruker en rekke samling strukturer for lagring og behandling av data. Matrisen er en av de vanligste lagrings objekter i Java-programmer. Når en gruppe inneholder data, kan Java-programmer behandle dataene ved å åpne enkeltelementer eller en løkke gjennom hele strukturen, behandler ett element om gangen. Array Index utenfor banen Unntak oppstår når en feil indeksverdi er brukt i et forsøk på å få tilgang til en rekke element.

Array tilgang

Java-programmer kan få tilgang til tabellverdier ved hjelp matrisen variabelnavnet og indeks. Indeksen er representert ved hjelp av en primitiv type int verdi. Følgende kode utdrag viser tilgang til en rekke element, skriver verdien til utdatakonsollen:

String [] someStrings = { "Red", "Green", "Blue"};

System.out.println (someStrings [0]);

Koden skaper første rekken, Instantiating det med tre elementer, åpner det første objektet, som er lagret i posisjon null. Java-kode kan også sløyfe gjennom en rekke, gjennomføre behandlingen på hvert element:

for (int i = 0; i <someStrings.length; i ++) {

System.out.println (someStrings [i]);

}

I dette tilfelle koden skriver hvert gruppeelement på en separat linje.

indeksverdier

Programmerere bruker arrays må sørge for at de bare bruker gyldige array-indeksene ved tilgang elementer. De eneste gyldige utvalg indeksverdier er de mellom null og en mindre enn lengden av rekken. Array indeksering starter på null, så den endelige posisjon i en matrise med fem elementer er på indeksen fire. Når koden åpner array elementer ved hjelp av enten variable referanser eller eksplisitte verdier, vil det bare bli vellykket hvis indeksverdien som brukes er innenfor rekkevidden av tabellen.

unntak

oppstår Java unntak når noe som ikke er innenfor normal utførelse eller behandlingen foregår. Hvis en kode utdrag forsøker å få tilgang til en rekke element ved hjelp av en indeks som er enten negativ eller er utenfor den endelige plasseringen i matrisen, vil Java kaste en Array Index Out Of Bounds unntak. For eksempel, hvis et program forsøker å lese elementet i posisjon fire i en oppstilling med fire elementer, bortsett vil bli kastet, siden den endelige matrise stilling er tre. Denne feilen er vanlig i tilfeller der programmene bruker løkker å behandle rekke innhold.

Utarbeidelse og Runtime

Array Index Out Of Bounds Unntak er en vanlig en, men programmerere blir ikke klar over det før kjøring. Siden det ikke er en kontrollert unntak, vil muligheten for denne feilen ikke hindre et program fra kompilere og kjøre. Av denne grunn, Java-programmerere må konstruere rekke tilgang kodestrukturer nøye, utføre omfattende testing for å sikre en matrise vil bare nås med gyldige indeksverdier.