Toon posts:

[JAVA] ArrayIndexOutOfBoundsException: -1

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben momenteel bezig met een opdracht van school, eerst even uitleggen wat het allemaal inhoud deze opdracht.

Ik heb een class genaamd Hotel. In dat hotel zitten kamers. Kamer is ook een class, er zijn ook 2 andere soort kamers Suites en Gewone Kamers ook beide classen die erven van de classe Kamer. Ik kan deze 3 verschillende kamers gewoon willekeurig in een vector/arraylist stoppen, en typecasten naar Kamer. Ik krijg hier geen foutmeldingen bij. Nu heb ik in mijn user interface 2x een listbox staan eentje voor vrije kamers en de andere voor bezette kamers. Alleen als de listboxen redelijk vol staan krijg ik de error ArrayIndexOutOfBoundsException: -1. Als ik een bezette kamer bijvoorbeeld vrij wil maken.
Als ik boven de 7 listbox items kom komt deze error eronder doet ie het wel goed. Wat kan ik hieraan doen ? Mocht jullie code willen hebben die volgens de compiler ermee te maken heeft wil ik dat wel even posten.

  • Postman
  • Registratie: Februari 2000
  • Laatst online: 01-05 13:23
Je roept ergens een array waarde aan die niet (meer) bestaat, vandaar ook de foutmelding.

Kijk eens goed of je met het weghalen e.d. wel ervoor zorgt dat je daarna niet bijvoorbeeld array index 5 aanroept terwijl je maar 4 waardes hebt ofzo (en als je index nummer 4 weghaalt dan wordt nummer 5 -> 4, 6 -> 5, 7 -> 6, etc).

  • DaCoTa
  • Registratie: April 2002
  • Laatst online: 23:25
Vraag aan de docent hoe een debugger werkt. Dit soort problemen droog oplossen is niet de manier om dat voor elkaar te krijgen. Mocht je nog geen IDE gebruiken, experimenteer eens wat met Eclipse en de interne debugger. Dan heb je dit probleem in 3 minuten gevonden.

  • MrBucket
  • Registratie: Juli 2003
  • Laatst online: 29-10-2022
Idd, leer een debugger gebruiken, die zijn speciaal voor dit soort dingen gemaakt :) Daar heb je veel meer aan dan in het wilde weg dingen uitproberen in de hoop dat je het probleem oplost.

Desalniettemin heb ik ook nog wel een suggestie waar je naar zou kunnen kijken. '-1' wordt namelijk door zowel JList als List (weet niet of je Swing of AWT gebruikt) gebruikt om, als je de index van het huidig geselecteerde element opvraagt, aan te geven dat er niks geselecteerd is.

Dus mocht je idd java.awt.List.getSelectedIndex() gebruiken, dan is het misschien de moeite om deze mogelijkheid eens te bekijken.

Verwijderd

Topicstarter
OK het voorgaande probleem bestond niet eens het is dus idd de getselected ding, dus ik kom er verder wel uit gok ik !!! Enig idee btw of de debugger van JBuilder 2005 anders is als van vorige versies want mijn boek legt het uit maar wil neit baten in 2005. Maar daar kom ik ook wel uit. IIG bedankt voor de tips !!