login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[JAVA] Casten en Vectors

Offline Dynad - 03/01/2009 18:33 (laatste wijziging 04/01/2009 01:31)
Avatar van DynadLid Hallo alle,

Ik heb een vraag over casten, ik heb een arraylist met generics en een Vector zonder generics(dus je moet dan later gaan casten)

Ik heb de volgende regels:

  1. ArrayList<SH> positions;
  2. System.out.println(positions.get(index).getPosition());


  1. Vector positions2 = new Vector();
  2. System.out.println((SH)positions2.elementAt(index).getPosition());


Dus wat ik hier wil doen is de positie uit de list halen lijkt heel simpel maar stom genoeg werkt alleen me arraylist en me vector niet ik heb atm geen idee wat het probleem is....

Error die hij geeft is: cannot find symbol

Terwijl deze methode wel in de class SH staat.....

Greetz,
~Dynad

3 antwoorden

Gesponsorde links
Offline nemesiskoen - 03/01/2009 20:55 (laatste wijziging 03/01/2009 20:59)
Avatar van nemesiskoen Gouden medaille

PHP expert
Wat is die SH klasse? Als het item oorspronkelijk van het type SH was dan kan zo werken:

  1. ((SH)position2.elementAt(index)).getPosition();


Maar dan moet dat element oorspronkelijk wel van dat type zijn geweest.

Je kan natuurlijk, zonder dat casten, ook gewoon werken met generics met Vectors:

  1. Vector<SH> position2 = new Vector<SH>();
Offline MothZone - 03/01/2009 23:02
Avatar van MothZone PHP ver gevorderde Even wat uitleg bij de eerste oplossing van nemesiskoen: je haakjes staan niet goed.
Nu cast je heel het stuk positions2.elementAt(index).getPosition() naar SH, wat vermoedelijk niet de bedoeling is.
Dit is dus ook de reden dat hij de methode niet vind.
Offline Dynad - 04/01/2009 01:29 (laatste wijziging 04/01/2009 01:44)
Avatar van Dynad Lid de reden dat ik geen generics gebruik is dat MIDlets geen generics ondersteunen...... nou het werkt niet in mijn geval. vandaar ik het met casten wil doen.

edit:

@nemesiskoen
Ik heb jouw oplossing 1 gebruikt en idd die 2 haakjes zorgen ervoor dat hij eerst cast naar SH en daarna de methode aanroept.... dus bedankt  
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.205s