Kurze Frage zu Array

yuro

Erfahrenes Mitglied
Servus,

und zwar hab ich ne folgende Frage.. Mein Programm soll alle ISBN Nummern anzeigen.

die variable "isbn" wurde in der Java Klasse CD definiert.

"cds" kommt von ArrayList<CD> cds = new ArrayList<CD>();

Java:
Manager.java:

	//Zeige alle ISBN
	public String[] holeAlleISBN() throws RemoteException {
		String[] tmp = null;
		
		for(int i=0; i < cds.size(); i++){
			CD tmpCD = cds.get(i);
			
			if(!tmp.contains(tmpCD.isbn)){
				tmp.add(tmpCD.isbn);
			}
		}
		return tmp;		
	}

er kann die if-schleife ned aufrufen...?! was müsst ich denn da genau ändern? Kann mir jmd helfen?!

gruß
 
Hi

Mit "nicht aufrufen" meinst du Compilerfehler?
Warum denkst du denn, dass ein Array contains und add kann?
Vor allem, wenn es null ist?

Und if ist keine Schleife. Schleifen wiederholen sich (while, do-while, for, foreach).

Gruß
 
Ja das wird mir angezeigt:

Cannot invoke contains(String) on the array type String[]

if anweisung sorry..

ja wenn ich doch String[] tmp = new String[] <-- muss ich doch was einfügen in die Klammern oder nicht****

Ich dachte erstmal das es geht wie beim ArrayList<> aber dann hat mich das gegenteil überzeugt :)
 
Nein, geht nicht wie bei der ArrayList.

Das pure Array kann nicht vergrößert werden,
das muss bei new schon seine fixe Größe bekommen.
Die Größe hast du ja mit cds.size() schon.
 
ok das heisst ich kann String[] tmp = null; belassen? und muss die If-Anweisung entfernen****

Aber er überschreibt doch dann die ganze zeit das letzte.. wie lass ich dann ALLE anzeigen und ned immer das aktuellste**** oder hab ich das gerade falsch verstanden?
 
Ja, falsch verstanden.
Java:
public String[] holeAlleISBN() throws RemoteException {
	String[] tmp = new String[cds.size()];

	for(int i=0; i < cds.size(); i++)
		tmp[i] = cds.get(i).isbn;
	return tmp;     
}

Gruß
 
Dankeee für die Hilfe echt.

Ich hab noch ne Frage was ist mit der Klasse CD.. bei mir steht

"Type mismatch: cannot convert from CD to String"

von der Zeile
Code:
tmp[i] = cds.get(i);
 
aaah ok... und wenn ich jetzt sagen wir mal als beispiel:

Java:
public CD[] holeCDProKategorie(String kategorie) throws RemoteException { }

hätte.. da könnte ich ja das obere auch übernehmen nur halt für kategorie und müsste einen verweis auf das String kategorie machen oder****
 

Neue Beiträge

Zurück