Avatar billede dat00c12 Nybegynder
27. september 2001 - 12:36 Der er 5 kommentarer og
1 løsning

Enumeration

HJÆLP jeg mangler et HELT eksmepel på hvor man, kan
se at man implementere Enumeration. Jeg er helt lost så det kunne være rart med et helt færdigt og kørende eksempel
Avatar billede disky Nybegynder
27. september 2001 - 12:41 #1

Eksemplet udskriver alle objecter som er i en vector.



Vector v=new Vector();

v.add(\"10\");
v.add(\"20\");
v.add(\"30\");
v.add(\"40\");

for (Enumeration e = v.elements() ; e.hasMoreElements() ;)
{
  System.out.println(e.nextElement());
}
Avatar billede carstenknudsen Nybegynder
27. september 2001 - 12:57 #2
Med mindre du virkelig skal benytte en Enumeration
bør du overveje at benytte en Iterator i stedet. Enumeration
er et levn fra de såkaldte legacy klasser. disky\'s svar
kan så skrives som:
                Vector v = new Vector();
                v.add(\"10\");
                v.add(\"20\");
                v.add(\"30\");
                v.add(\"40\");
                for(Iterator i=v.iterator(); i.hasNext();) {
                        System.out.println(i.next());
                }
Avatar billede disky Nybegynder
27. september 2001 - 13:11 #3
det er nemlig korrekt.

Der findes dog metoder som returnerer en Enumration. Men de anvendes meget ens.
Avatar billede carstenknudsen Nybegynder
27. september 2001 - 13:23 #4
En del klasser bla. Vector blev \"retro\"-fittede til at
implementere Collection interfacet, hvis kontrakt
specificerer at man skal kunne returnere en Iterator
med metoden iterator(). 
Kommentar til dat00c12
En anden lille kommentar er at når du har en
struktur der tillader random access som Vector
og ArrayList klasserne er det mere effektivt
at benytte:
for (int i=0, n =v.size(); i<n; i++) {
    ...
}
det duer dog ikke til alle klasser der kan levere
en Enumeration eller en Iterator.
Avatar billede disky Nybegynder
28. september 2001 - 11:09 #5
HALLO hvad pokker er meningen, jeg giver dig et svar på det du spørger om så så bliver man afvist.

Du beder om enumration og det for du, så er det da totalt snyd jeg ikke for point.

Ja Iterator kan bruges, men ikke til alt !
Avatar billede rolchau Nybegynder
28. september 2001 - 11:26 #6
Hvis du skal bruge en klasse der implementere Enumeration så skal du kalde implements og lave metoderne som det interface du implements indeholder:

class TilfaeldigeTal
        implements Enumeration {
  //Constructor
  ..
  //Methods
  public Object nextElement() { ... }

  public void hasMoreElements() { ... }
}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester