Conversie Object [] naar int [] fout

Possible Duplicate:
How to convert List to int[] in Java?

Ik heb een ArrayList en wanneer ik probeer het te converteren naar een Array of Integer omdat ik operaties moet uitvoeren die betrekking hebben op integer, krijg ik de volgende foutmelding:

incompatibele typen
    vereist: int []
    gevonden: java.lang.Object []

Hier is mijn code:

List ids_rdv = new ArrayList();

// I execute an SQL statement, then :
while (resultat.next()) {
    ids_rdv.add(resultat.getInt("id_rdv"));
}
int[] element_rdv_id = ids_rdv.toArray(); //Problem

Heb je daar enig idee van?

1

2 antwoord

Ervan uitgaande dat uw oorspronkelijke objecten instanties waren van de klasse Integer:

Integer[] element_rdv_id = ids_rdv.toArray(new Integer[0]);
5
toegevoegd
Dank je !! Het werkt nu !! maar ik begrijp nog steeds niet wat je gedaan hebt?
toegevoegd de auteur Copernic, de bron
bedankt @Havelock :) hoe zit het met nieuw Integer [0] ?
toegevoegd de auteur Copernic, de bron
Bedankt dat het erg behulpzaam was :)
toegevoegd de auteur Copernic, de bron
Gewoon Integer is niet hetzelfde gegevenstype als int . Ook als u later een waarde uit deze Integer [] array nodig heeft, moet u mogelijk element_rdv_id [i] .intValue() gebruiken in plaats van element_rdv_id [i] zoals je zou verwachten.
toegevoegd de auteur Havelock, de bron
Kijk eens hier
toegevoegd de auteur Havelock, de bron
incompatible types required: int[] found: java.lang.Object[]

wanneer u ids_rdv.toArray() uitvoert, wordt een array met objecten geretourneerd die niet kan worden toegewezen aan een array van primitieve integertypen.

Je moet een hele reeks Integer-objecten in de hand krijgen, dus schrijf het op deze manier

Integer[] element_rdv_id = ids_rdv.toArray(new Integer[]);
0
toegevoegd
Bedankt Ahmad, ik begrijp het nu, beantwoord upmoted;)
toegevoegd de auteur Copernic, de bron