# Array aus anderer Klasse aufrufen



## Ascy (23. Aug 2012)

Guten Abend ich habe in einer Klasse ein Array erstellt das mit Werten befüllt wird:


```
private Entry[] addressbook = new Entry[9];
```

nun will ich dieses aus einer anderen Klasse java Datei im selben Packet aufrufen kann mir da vielleicht jemand helfen wie ich das am besten anstelle?


----------



## Mujahiddin (23. Aug 2012)

Entweder machst du das 
	
	
	
	





```
private
```
 weg, oder du machst eine Getter-Methode!


----------



## tribalup (23. Aug 2012)

Nimm nen Getter.


----------



## lilith2k3 (23. Aug 2012)

Ascy hat gesagt.:


> Guten Abend ich habe in einer Klasse ein Array erstellt das mit Werten befüllt wird:
> 
> 
> ```
> ...



Nein, das möchtest Du nicht - zumindest solltest Du das nicht wollen.

Was Du willst, ist, dass Dir der Inhalt dieses Arrays zugänglich gemacht wird.
Und da wäre die empfohlene Methode, dass Du Dir eine Schnittstelle mithilfe eines Getters schreibst. Nach Möglichkeit solltest Du hier vermeiden, dass Du das Array als solches zurückgibst. Besser wäre eine Collection oder ähnliches, damit die Implementation im Inneren der Klasse nicht nach außen dringt.
Somit ist Dein Array sauber gekapselt.


----------



## haui95 (23. Aug 2012)

Getter und Setter ? - Oder einfach dein Array statisch deklarieren und in deiner anderen Klasse einer Variable zuweisen.

Galileo Computing :: Java ist auch eine Insel (8. Auflage) – 6.2 Privatsphäre und Sichtbarkeit

MfG


----------



## Ascy (24. Aug 2012)

bereits mit Getter gemacht danke.

Eine letzte Frage habe ich noch 

Als Beispiel ich habe ein Array wobei jeder Index aus (Vorname, Nachname, Alter) besteht wie kann ich mir jetzt zum Beispiel auf den Inhalt prüfen wenn ich nur den Vornamen kenne also zum Beispiel gebe mir alle aus die Peter heißen.

Mir reicht auch ein Link aber ich habe es beim googeln nicht gefunden


----------



## njans (24. Aug 2012)

Und was befindet sich ind em Array? 
Ist Vorname,Nachname,Alter alles in einem Objekt zusammengefasst oder ist das alles nur einzelner String?


----------



## Ascy (24. Aug 2012)

Das ist in einem Objekt zusammengefasst


----------



## Kjubert (24. Aug 2012)

Also da du ja ein Array hast, müsstest du dich durchwühlen und gucken, wo der Name auftaucht.
Hast du also eine eigene Klasse, die (Vorname, Nachname, Alter) abspeichert? Dann nenne ich die einfach mal "PersonenDaten":


```
for (PersonenDaten pD : datenArray){
	if (pD.getVorname.equals("Peter")){
		System.out.println(pD.getVorname); //oder was auch immer
		liste.add(pD); //du könntest eine List<PersonenDaten> machen, wo die Treffer gesammelt werden
	}
}
```

Aber noch viel hübscher wärs natürlich, wenn du dir noch eine Datenstruktur bastelst, die dir dein Array mit Personendaten verwaltet. Die Methode zum Zurückliefern der Liste ließe sich z.B. einbauen.
Viel Erfolg!


----------



## Ascy (24. Aug 2012)

Naja Das ganze soll halt nur ne mockup klasse sein daher eher weniger  die Daten liegen im Array und ich will nun wenn ich einer Methode Vorname und Nachname übergebe den Wert aus dem Array erhalten also die Personen sind nirgendwo hinterlegt Außer im array


----------

