Ik haal in Java gegevens uit een database, uit een veld met namen (strings en eentje met hele getallen (integers).
Met een string doe ik dat zo:
Iedere keer wordt er een item aan de arraylist toegevoegd, geen probleem.
Maar als ik dat doe met de integers, met getInt(0) dan gaat het fout omdat een arraylist geen primitieve types zoals int mag bevatten.
Ik zou dus een array moeten gebruiken, maar ik weet de grootte niet vantevoren. dat kan ik oplossen door het bovenstaande stukje code eerst uit te voeren en dan de waarde van i te pakken, maar de array met nummers moet ook in andere methoden binnen dezelfde klasse beschikbaar zijn (om te vergelijken met een integer van de user input), waarvoor ik dus ook weer vantevoren zou moeten weten hoe groot hij is.
Ik moet dus gewoon een arraylist voor integers hebben. Is nu de enige oplossing om ze eerst als string in een arraylist te zetten, dan in de laatste methode de grootte uitlezen, een array aanmaken, alle strings converteren naar int en in de array plaatsen?
Met een string doe ik dat zo:
code:
1
2
3
4
5
6
7
8
| ArrayList listName = new ArrayList();
while (dbResult.next()) {
listName.add(dbResult.getString(1));
i++;
} |
Iedere keer wordt er een item aan de arraylist toegevoegd, geen probleem.
Maar als ik dat doe met de integers, met getInt(0) dan gaat het fout omdat een arraylist geen primitieve types zoals int mag bevatten.
Ik zou dus een array moeten gebruiken, maar ik weet de grootte niet vantevoren. dat kan ik oplossen door het bovenstaande stukje code eerst uit te voeren en dan de waarde van i te pakken, maar de array met nummers moet ook in andere methoden binnen dezelfde klasse beschikbaar zijn (om te vergelijken met een integer van de user input), waarvoor ik dus ook weer vantevoren zou moeten weten hoe groot hij is.
Ik moet dus gewoon een arraylist voor integers hebben. Is nu de enige oplossing om ze eerst als string in een arraylist te zetten, dan in de laatste methode de grootte uitlezen, een array aanmaken, alle strings converteren naar int en in de array plaatsen?
Aan de inhoud van de bovenstaande tekst kunnen geen rechten worden ontleend, tenzij dit expliciet in dit bericht is verwoord.