Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Was genau bedeutet dann das?
Was soll ich unter "die auszugebende Zeichenkette" und "die eingegebene Zeichenkette" verstehen?
Wenn ich z.B. erwarte, dass das Programm zeigt: "geben Sie einen Mädchenname ein", der Benutzer aber einen Jungenname eingibt, wie sieht dann diese Methode aus bzw. was gibt dann diese Methode zurück?
Habe ich es richtig verstanden:
"die auszugebende Zeichenkette" heißt in meinem Beispiel "geben Sie einen Mädchenname ein"
und
"die eingegebene Zeichenkette" der Jungenname, den der Benutzer eingegeben hat?
Wollte noch was fragen bezüglich des Anwendens dieser Methode.
Wenn diese Methode beispielsweise in der Terminal Klasse ist, und ich in einer anderen Klasse askString verwenden möchte, wie gehe ich dann vor? Also bleiben wir mal bei meinem alten Beispiel:
Java:
public class Terminal {
public static String askString(String prompt) {
System.out.print(prompt);
return readString();
}
ich will dass der Benutzer einen Mädchenname eingibt, wenn einen Jungenname eingegeben wird, dann soll rauskommen "neuer Versuch".
Java:
public class TestName {
String eingabe = "Geben Sie einen Mädchenname ein";
public String getName(String eingabe) {
this.eingabe = eingabe;
return Terminal.askString(eingabe);
}
}
Wo kommt nun der Jungenname und "neuer Versuch" hin?
Habe echt keine Idee wie ich es implementieren soll...stehe total aufm Schlauch...
Das ist ein viel komplexeres Thema als Deine Einstiegsfrage. Das läuft ja schon auf ein kleines validierendes Framework raus.
Das Problem ist, dass Du (und da kann eigentlich keiner helfen) festlegen muss, wer (im Sinne welche Klasse) die Validierung machen soll, und wo (ggf woander) die Regeln für die Gültigkeit definiert werden. In Deinem Fall ist ja schon für einen menschen nur schwer feststellbar, ob ein Name männlich oder weiblich ist...
Das ist ein viel komplexeres Thema als Deine Einstiegsfrage. Das In Deinem Fall ist ja schon für einen menschen nur schwer feststellbar, ob ein Name männlich oder weiblich ist...
Das Problem ist, dass die Anforderung inkonsistent ist: Welchen Sinn hat ein fexibler Prompt-Text, wenn die Validitätsprüfung dann doch direkt in der Methode ohne Einfußnahme des Aufrufers läuft? Die Methode kann ausschließlich Mädchennamen entgegennehmen, egal, was der Prompt-Text sagt...
Das Problem ist, dass die Anforderung inkonsistent ist: Welchen Sinn hat ein fexibler Prompt-Text, wenn die Validitätsprüfung dann doch direkt in der Methode ohne Einfußnahme des Aufrufers läuft? Die Methode kann ausschließlich Mädchennamen entgegennehmen, egal, was der Prompt-Text sagt...
/**
* TT: Der String eingabe kann nicht auf diesem Weg aus der Methode kommen.
* @param eingabe der Name, den der Benutzer eingibt.
*/
// TT: Methoden beginnen IMMER mit Kleinbuchstaben!
// TT: dieser Methodenname und sein Parameter beschreiben in keiner Weise, wass die Methode tut
public void Start(String eingabe) {
this.eingabe = eingabe;
prompt = "Geben Sie einen Name ein (Anna|Becca)";
eingabe = MyTerminal.askString(prompt);
if (MyTerminal.askString(prompt) == "Anna") {
prompt = "go to Anna";
} else if (MyTerminal.askString(prompt) == "search") {
prompt = "go to Becca";
} else {
System.out.println("Neuer Versuch");
Start(eingabe);
}
}