Hallo,
Ich habe eine ArrayList vom Typ 'File'
private ArrayList<File> files = new ArrayList<File>();
Jetzt habe ich eine Methode getFile, die überladen ist. Ich kann einmal die Position angeben oder einen gesuchten String.
Wenn ich einen String übergebe, sucht der die Position raus und übergibt diesen an die überladene Methode welche dann das Objekt an der Stelle zurückgibt.
Hier die beiden Methoden:
Nur, mein problem ist: Wenn der Wert nicht vorhanden ist, gibt mir die Methode natürlich das Objekt an der Stelle 0 zurück.
Wie kann ich es realisieren, dass wenn der Wert nicht gefunden wurde (und somit pos noch gleich 0 ist) einfach nichts zurückzugeben? Ich hatte schon dran gedacht in der ArrayList an der Stelle 0 einfach ein leeres Objekt zu erzeugen. Fände dies aber sehr unelegant!
Wie könnte ich dies realisieren?
Danke schonmal
gruß
ocean-driver
Ich habe eine ArrayList vom Typ 'File'
private ArrayList<File> files = new ArrayList<File>();
Jetzt habe ich eine Methode getFile, die überladen ist. Ich kann einmal die Position angeben oder einen gesuchten String.
Wenn ich einen String übergebe, sucht der die Position raus und übergibt diesen an die überladene Methode welche dann das Objekt an der Stelle zurückgibt.
Hier die beiden Methoden:
Code:
public File getFile(int nr){
return files.get(nr);
}
public File getFile(String gesuchter_wert){
int pos=0;
if(files.contains(gesuchter_wert))
{
for(int i = 0; i<files.size();i++)
{
if(files.get(i).getLocation().equals(gesuchter_wert))
{
pos = i;
i = files.size();
}
}
}
}
Nur, mein problem ist: Wenn der Wert nicht vorhanden ist, gibt mir die Methode natürlich das Objekt an der Stelle 0 zurück.
Wie kann ich es realisieren, dass wenn der Wert nicht gefunden wurde (und somit pos noch gleich 0 ist) einfach nichts zurückzugeben? Ich hatte schon dran gedacht in der ArrayList an der Stelle 0 einfach ein leeres Objekt zu erzeugen. Fände dies aber sehr unelegant!
Wie könnte ich dies realisieren?
Danke schonmal
gruß
ocean-driver