Avatar billede nicholai Nybegynder
19. januar 2002 - 17:10 Der er 5 kommentarer og
1 løsning

Hvilken List skal jeg bruge??

Jeg skal lave en liste der kan indeholde et object. Objectet skal indeholde en string OG en int.. Jeg kan derfor ikke bruge HashMap eller??

Hvis jeg laver et object der indeholder string og int, hvordan kan jeg så få begge dele ud samtidig, og ikke kun pointeren til objectet?

Venlig hilsen Nicholai
Avatar billede greybeard Nybegynder
19. januar 2002 - 17:21 #1
objekter har en hashCode() metode, som du kan bruge.
Du kan også f.eks. bruge ArrayList, men det må afhænge af hvad det skal bruges til.
Du kan ikke få værdien af dine instansvariable ud direkte, men er nødt til at caste det objekt du får fra containeren og kalde metoder på det.
Avatar billede carstenknudsen Nybegynder
19. januar 2002 - 17:32 #2
Du kan under ingen omstændigheder få mere end
et object ud ad gangen. Referencen til et objekt
kan give dig adgang til begge elementer som her:
public class Data {
private String s;
private int i;
public Data(String s,int i) {
this.s = s;
this.i = i;
}
public String getString() { return s; }
public int getInt() { return i; }
}
Det virker som lidt voldsomt at bruge en liste
til at gemme et objekt, men hvis det er det du
har brug for så brug en ArrayList.
Jeg vil gerne uddybe svaret hvis du præciserer
hvad det er du har brug for at lave.
Avatar billede nicholai Nybegynder
19. januar 2002 - 17:35 #3
hvis jeg  laver en ArrayList med et object der indeholder string og int, hvordan kan jeg så caste string og int ud samtidig?
Avatar billede nicholai Nybegynder
19. januar 2002 - 17:38 #4
undskyld, jeg så ikke der var kommet flere indlæg. Skal lave en lister over fly navne (string) samtidig med at de skal have antal sæder (int). Tror godt jeg kan bruge overstående fra carsten.. Tak
Avatar billede carstenknudsen Nybegynder
19. januar 2002 - 17:40 #5
Det er som jeg skrev umuligt. Du kan kun få
en ting ud ad gangen.
ArrayList list = new ArrayList();
Data data = new Data( \"streng\", 56 );
list.add( data );
Data x = (Data)list.get( 0 );
String a = x.getString();
int k = x.getInt();
Avatar billede nicholai Nybegynder
19. januar 2002 - 18:04 #6
Jeg siger mange tak.. Det var lige hvad jeg skulle bruge.
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