/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Tilgang til objecter i LinkedList
Fra : Tonny Gregersen


Dato : 19-09-02 23:48

Hej

Jeg sidder og roder med at lave et program, hvor jeg gemmer nogle objekter i
en LinkedList. Det lader til at gå fint, bortset fra når jeg vil tilgå
dataene i objekterne igen. Når jeg prøver på dette, så får jeg altid dataene
fra det objekt, som jeg sidst har tilføjet min LinkedList.

Jeg har tilføjet koden fra de to klasser (MyLinkedList.java og Person.java),
som jeg har lavet som et eksempel på, hvad jeg gør. Jeg håber, at der er
nogen, som kan gennemskue, hvad det er der går galt.

Istedet for at få skrevet dataene ud fra de tre forskellige objekter, så får
jeg skrevet dataene fra det tredje og sidst tilføjede objekt tre gange i
træk.

Håber, at der er nogen, som er klogere end mig - det skulle undre mig meget
om der ikke var det

På forhånd tak
Tonny Gregersen


/*-------------------*/
/*MyLinkedList.java*/
/*-------------------*/
import java.io.*;
import java.util.*;

class MyLinkedList{

public static void main(String[] args)
{
System.out.println("Hi");

List person_list = new LinkedList();

Person my_person = new Person();

// Create person A and add to linked list
my_person.setName("Andrew");
my_person.setNumber(1);
person_list.add(my_person);

// Create person B and add to linked list
my_person.setName("Billy");
my_person.setNumber(2);
person_list.add(my_person);

// Create person C and add to linked list
my_person.setName("Charlie");
my_person.setNumber(3);
person_list.add(my_person);

System.out.print("There are now " + person_list.size());
System.out.println(" persons in the list");

// Write out first person in list
my_person = (Person)person_list.get(0);
System.out.println("First person name : " + my_person.getName());
System.out.println("First person number : " + my_person.getNumber());

// Write out second person in list
my_person = (Person)person_list.get(1);
System.out.println("Second person name : " + my_person.getName());
System.out.println("Second person number: " + my_person.getNumber());

// Write out third person in list
my_person = (Person)person_list.get(2);
System.out.println("Third person name : " + my_person.getName());
System.out.println("Third person number : " + my_person.getNumber());
}
}// End class MyLinkedList


/*-------------*/
/* Person.java */
/*-------------*/
class Person{

private String name;
private int number;

public Person()
{
}

public void setName(String new_name)
{
name = new_name;
}

public void setNumber(int new_number)
{
number = new_number;
}

public String getName()
{
return name;
}

public int getNumber()
{
return number;
}
} // End class Person



 
 
Filip Larsen (20-09-2002)
Kommentar
Fra : Filip Larsen


Dato : 20-09-02 00:27

Tonny Gregersen skrev

> // Create person B and add to linked list
> my_person.setName("Billy");
> my_person.setNumber(2);
> person_list.add(my_person);

"Create" er præcis nøgleordet her ...


Mvh,
--
Filip Larsen <filip.larsen@mail.dk>



Bertel Lund Hansen (20-09-2002)
Kommentar
Fra : Bertel Lund Hansen


Dato : 20-09-02 06:15

Tonny Gregersen skrev:

> Person my_person = new Person();

Der findes nu ét eneste personobjekt.

> my_person.setName("Andrew");

Nu hedder det Andrew.

> my_person.setName("Billy");

Nu hedder det Billy.

> my_person.setName("Charlie");

Og nu hedder det Charlie.

Du har lagt en reference til dette objekt ind i listen 3 gange.
Lav en ny person hver gang i stedet.

--
Bertel
http://bertel.lundhansen.dk/   FIDUSO: http://fiduso.dk/

Tonny Gregersen (20-09-2002)
Kommentar
Fra : Tonny Gregersen


Dato : 20-09-02 08:30


"Bertel Lund Hansen" <nospam@lundhansen.dk> wrote in message
news:ojblou85g0rl5i7p2ft3r3a9s1sgep2qub@news.telia.dk...
> Tonny Gregersen skrev:
>
> > Person my_person = new Person();
>
> Der findes nu ét eneste personobjekt.
>
> > my_person.setName("Andrew");
>
> Nu hedder det Andrew.
>
> > my_person.setName("Billy");
>
> Nu hedder det Billy.
>
> > my_person.setName("Charlie");
>
> Og nu hedder det Charlie.
>
> Du har lagt en reference til dette objekt ind i listen 3 gange.
> Lav en ny person hver gang i stedet.

Oh.. ja, selvfølgelig - en gang imellem glemmer man at tænke sig om.

Tak for hjælpen




Bertel Lund Hansen (20-09-2002)
Kommentar
Fra : Bertel Lund Hansen


Dato : 20-09-02 10:57

Tonny Gregersen skrev:

>Oh.. ja, selvfølgelig - en gang imellem glemmer man at tænke sig om.

Måske, men det værste er nu når man tænker sig om og det ikke
hjælper.

--
Bertel
http://bertel.lundhansen.dk/   FIDUSO: http://fiduso.dk/

Trygleren (20-09-2002)
Kommentar
Fra : Trygleren


Dato : 20-09-02 14:44


> Måske, men det værste er nu når man tænker sig om og det ikke
> hjælper.

Hovhov! Det var meget..... frækt sagt! - citat: "Lex & Klatten".

--
"Sic gorgiamus allos subjectatos nunc"
Lars Winther





Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408937
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste