Slyh: Übergabe von Variablen

Beitrag lesen

Hallo,

public String create( String test1="", String test2="" ) {
   String str;
   if( test1 != "", test2 != "" ) {
      str = "Test1 = "+ test1 +" und Test2 = "+ test2;
   }
   return str;
}

Hätte jetzt gerne gewusst, ob es bei Java möglich ist so die Übergabe
von Parameter zu gestallten.

Nein, das geht aktuell in Java nicht. Du kannst das angestrebte Ergebnis
aber annähernd durch Überladen der Methode "create" erreichen, etwa so:

public String create(String test1, String test2)
{
  ...
}

public String create(String test1)
{
  create(test1, "");
}

public String create()
{
  create("", "");
}

Somit könntest du beispielweise "create()" aufrufen, was einem Aufruf
von create("", "") entspricht, was du ja willst.

Benannte Parameter gibt es in Java jedoch nicht, so daß du im konkreten
Fall für test1 niemals einen Default-Wert angeben kannst, wenn du
gleichzeitig test2 explizit übergibst.

Du könntest der Methode natürlich auch eine Hashtable oder dergleichen
mitgeben, aus der dann anhand des Namens der Variablenwert gelesen
werden kann. Aus Gründen des Overheads und der Möglichkeit von
Laufzeitfehlern willst du das aber nicht wirklich.

Gruß
Slyh